che*_*zer 3 javascript arrays angularjs angularjs-ng-repeat angular-ng-if
我知道ng-repeat只适用于数组.
我的问题是当我不知道从服务器获取的对象是数组还是仅对象时.
我需要动态确定它是否是数组或对象,并且只有当它的数组使用ng-repeat时才需要.
我的问题是什么是使用ng-repeat with condition的最好方法 - 只有当对象是一个数组时?
我试着用这种方式解决问题:
<div ng-if="Array.isArray(myObj)"ng-repeat="item in myObj">
<do-some-stuff item='item'></do-some-stuff>
</div>
<do-some-stuff ng-if="!Array.isArray(myObj)" item='myObj'></do-some-stuff>
Run Code Online (Sandbox Code Playgroud)
但它不起作用.
ng-repeat priority为1000,ng-if priority为600.所以ng-repeat先执行,然后执行ng-if.这就是你的代码不工作的原因.使用此代码:
<div ng-if="Array.isArray(myObj)">
<div ng-repeat="item in myObj">
<do-some-stuff item='item'></do-some-stuff>
</div>
</div>
<do-some-stuff ng-if="!Array.isArray(myObj)" item='myObj'></do-some-stuff>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3058 次 |
| 最近记录: |