Jak mogę uniknąć {{f = ...}}
wydrukowania treści w trzecim wierszu forecast[day.iso]
?
Chcę uniknąć używania forecast[day.iso].temperature
i tak dalej dla każdej iteracji.
<div ng-repeat="day in forecast_days">
{{$index}} - {{day.iso}} - {{day.name}}
{{f = forecast[day.iso]}}
Temperature: {{f.temperature}}<br>
Humidity: {{f.humidity}}<br>
...
</div>
javascript
angularjs
ng-init
Daniel F.
źródło
źródło
Odpowiedzi:
Użyj ngInit : https://docs.angularjs.org/api/ng/directive/ngInit
<div ng-repeat="day in forecast_days" ng-init="f = forecast[day.iso]"> {{$index}} - {{day.iso}} - {{day.name}} Temperature: {{f.temperature}}<br> Humidity: {{f.humidity}}<br> ... </div>
Przykład: http://jsfiddle.net/coma/UV4qF/
źródło
ng-init="day.f = forecast[day.iso]"
To nie jest najlepsza odpowiedź , ale jest to również opcja: ponieważ możesz łączyć wiele wyrażeń, ale renderowane jest tylko ostatnie, możesz zakończyć swoje wyrażenie,
""
a zmienna zostanie ukryta.Możesz więc zdefiniować zmienną za pomocą:
{{f = forecast[day.iso]; ""}}
źródło