W moim kontrolerze mam dane takie jak:
$scope.object = data
Teraz tymi danymi jest słownik z kluczami i wartościami z json
.
Mogę uzyskać dostęp do atrybutu za object.name
pomocą szablonu. Czy jest jakiś sposób, że mogę również iterować klucze i wyświetlać je w tabeli jak
<tr><td> {{key}} </td> <td> data.key </td>
Dane są takie
{
"id": 2,
"project": "wewe2012",
"date": "2013-02-26",
"description": "ewew",
"eet_no": "ewew",
}
angularjs
angularjs-ng-repeat
użytkownik192362127
źródło
źródło
ngRepeat
. W rzeczywistości kiedyś usłyszałem, jak członek podstawowego zespołu żałuje, że wdrożył taką możliwość! Zwykle lepiej jest przekształcić obiekt w kontrolerze w tablicę; to sprawia, że intencja jest jaśniejsza i zmniejsza ryzyko dziwnych / nieprzewidywalnych zachowań w niektórych przypadkach. I możesz sortować w zwykły sposób. :-)Object.getOwnPropertyNames(data).map(k => ({key:k, value:data[k]));
.Jeśli chcesz edytować wartość właściwości z wiązaniem dwukierunkowym:
źródło
ng-model="value"
?ng-repeat
zasadniczo iteruje obiekt i zwraca pary klucz-wartość. Pomyśl o tym jakfor(var value in arrayOfValues) { ... }
. Jeśli ponownie przypiszesz zmiennąvalue
do pętli, nie zmienisz tego, co jest w środkuarrayOfValues
, po prostu ponownie wskażeszvalue
nowy obiekt.Nie sądzę, że jest do tego wbudowana funkcja kątowa, ale możesz to zrobić, tworząc osobną właściwość zasięgu zawierającą wszystkie nazwy nagłówków, i możesz wypełnić tę właściwość automatycznie w następujący sposób:
źródło
możemy wykonać poniższą procedurę, aby uniknąć wyświetlania kluczowych wartości w kolejności alfabetycznej.
JavaScript
HTML
źródło
Lista todo przykład, który pętle nad obiektem przez
ng-repeat
:źródło
Kompletny przykład tutaj: -
źródło
https://docs.angularjs.org/api/ng/directive/ngRepeat
źródło
Możesz to zrobić w swoim javascript (kontrolerze) lub HTML (widok kątowy) ...
js:
HTML:
Wierzę, że sposób HTML jest bardziej kątowy, ale możesz również zrobić to w kontrolerze i pobrać go w swoim HTML ...
również niezły pomysł, aby spojrzeć na klucze Object, dają one tablicę kluczy, jeśli ich potrzebujesz, więcej informacji tutaj:
https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Object/keys
źródło
Oto działający przykład:
edytowane
źródło