2015-02-07 102 views
0

說你有範圍的對象yourObject和您要訪問像下面的一些深層次的屬性:是否有任何指令在角度上像「with」一樣行事?

<ol> 
<li ng-bind="yourObject.thing.map.one"></li> 
<li ng-bind="yourObject.thing.map.two"></li> 
<li ng-bind="yourObject.thing.map.three"></li> 
</ol> 

是否有任何內置的指令,可以使它看起來更像是這樣的:

<ol ng-with="yourObject.thing.map"> 
<li ng-bind="one"></li> 
<li ng-bind="two"></li> 
<li ng-bind="three"></li> 
</ol> 

UPDATE 也有類似的問題。請參閱Equivalent of {{#with}} in angular

+0

的可能重複的[等效{{#with}}在角(http://stackoverflow.com/questions/24131910/equivalent-of-with-in-角) – redben 2015-03-08 18:20:38

回答

1

我會做這種情況的一種方法是通過實現一個控制器,將有一個變量的那些一個,兩個三...然後使用ng-repeat來循環。

所以對於ng-controller,你可以寫,ng-controller="SomeCtrl as ctrl"

然後ctrl.arrayVariable將容納所有你想顯示

爲了使事情非常簡單的一組數據,你可以通過使用ng-repeat循環數據。 因此,可能ng-repeat="var in ctrl.arrayVariable"

總之,我不確定你的代碼是如何構造的,但它應該在大多數情況下工作。

長話短說,ng-repeat是真棒

+0

好主意,簡單。儘管我可以騰出更多的代碼,但看起來你的解決方案是最簡單的。謝謝 ! (注意:雖然這個例子看起來像是一個重複模式,但我正在尋找一個全面解決深嵌套屬性訪問混亂的問題) – redben 2015-02-07 20:44:15

相關問題