AngularJS - Jak mogę odwołać się do nazwy właściwości w ramach powtórzenia ng


134

Oprócz renderowania wartości właściwości w obiekcie chciałbym również wyrenderować nazwę właściwości jako etykietę. Czy jest na to sposób ng-repeat? Na przykład:

<ul>
    <li ng-repeat="option in data">{{propertyName}}: {{option}}</li>
</ul>

Który może wypluć coś takiego:

<ul>
    <li>Name: John</li>
    <li>Phone: (123) 456-7890</li>
    <li>Country: England</li>
</ul>

Odpowiedzi:


337

Spróbuj tego:

<ul>
    <li ng-repeat="(key,val) in data">{{key}}: {{val}}</li>
</ul>

30
@Andy - właściwie nie są takie świetne. Potrzebują prostszych przykładów kodu, takich jak pokazałeś tutaj. Dziękujemy za odpowiedź i przesyłaj dalej posty do StackOverflow; Twój post naprawdę pomógł mi zrozumieć, jak uzyskać dostęp do dokumentów AngularJS. Pozdrawiam i zagłosuj!
— noogrub

tak proste, ale o tym nie pomyślałem: D tnx!
— Guntram

co zrobić, jeśli mam funkcję taką jak --- myFunc (klucz) ---, która wymaga wartości klucza, ta gonne pokaż mi klucz nazwy w html, a nie wartość
— Nejmeddine Jammeli

28

Problem z dokumentacją polega na tym, że mówi, (key, value)że z tą przestrzenią ... zajęło mi trochę czasu, zanim się zorientowałem, ponieważ to nie działa


1
Dzięki wielkie. Masz rację. Nie możesz mieć spacji między przecinkiem a wartością. (klucz, wartość) a nie (klucz, wartość).
— Chad DeShon

9
Być może w nowszych wydaniach Angulara sytuacja wygląda inaczej, ale między nimi może być odstęp (key, val). Często tak to robię.
— EnigmaRM

Okazało się, że (klucz, wartość) nie działa dla mnie. Czy mówisz, że to z powodu białych znaków ??? Jezu! Ale dzięki.
— code-sushi

2
U mnie działa również z przestrzenią.
— Shawn Lauzon,

wartość vs wartość wpływająca na przestrzeń?
— Danny Mahoney,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.