Javascript AngularJS:ngIf在具有不同属性的数组的数组中

Javascript AngularJS:ngIf在具有不同属性的数组的数组中,javascript,angularjs,angularjs-ng-repeat,angular-ng-if,Javascript,Angularjs,Angularjs Ng Repeat,Angular Ng If,我的目标: objects = [ { name: "1", foo: [{ value: 0.5, ignored: null, text: "foo1" }, { value: 0, ignored: null, text: "foo" }] }, { name: "2", foo: [{ value: 0, ignored: null,

我的目标:

objects = [
{
    name: "1",
    foo: [{
      value: 0.5,
      ignored: null,
      text: "foo1"
    }, {
      value: 0,
      ignored: null,
      text: "foo"
    }]
},
{
    name: "2",
    foo: [{
      value: 0,
      ignored: null,
      text: "foo"
    }, {
      value: 0.5,
      ignored: null,
      text: "foo2"
    }]
},
{
    name: "3",
    foo: [{
      value: 0.5,
      ignored: null,
      text: "foo3"
    }]
},
{
    name: "4",
    foo: [{
      value: 0,
      ignored: 1,
      text: "foo4"
    }]
},
{
    name: "5",
    foo: [{
      value: 0,
      ignored: null,
      text: "foo5"
    }]
}]
我的AngularJs模板html:

<div class="row" ng-repeat="object in objects">
  {{ object.name }}
  <div ng-repeat="foo in object.foo">
    <div ng-if="foo.value > 0 || foo.ignored == 1">
      {{ foo.text }}
    </div>
  </div>
</div>
但我不想在5号案例中显示
object.name

请在第一次
ng repeat
中如何使用第二次
ng repeat
ng if

<div class="row" ng-repeat="object in objects" ng-if="...???...">
  {{ object.name }}
  any text !!
</div>

{{object.name}
任何文本!!

如果,您可以在
ng中使用过滤功能

更改的模板:

<div class="row" ng-repeat="object in objects" ng-if="myFilter(object)">
  {{ object.name }}
  <div ng-repeat="foo in object.foo">
    <div ng-if="foo.value > 0 || foo.ignored == 1">
      {{ foo.text }}
    </div>
  </div>
</div>
结果:

1
foo1
2
foo2
3
foo3
4
foo4 
你可以简单地做:

<div class="row" ng-repeat="object in objects">
  <div ng-repeat="foo in object.foo">
    <div ng-if="foo.value > 0 || foo.ignored == 1">
      {{ object.name }}
      {{ foo.text }}
    </div>
  </div>
</div>

{{object.name}
{{foo.text}

如果您事先知道object.foo中只有一个元素可以通过ngIf。(就像你的例子一样)

你的数组不是数组的数组,而是对象的数组。请你澄清一下“不同性质”是什么意思?这是否意味着
objects
中的元素可以有不同的结构?@FlorianLim,对不起,我重新编辑了我的帖子,那么你为什么不把
ng if=“object.foo.value>0 | | object.foo.ignored==1”
放在主
ngRepeat
指令上呢?@AlonEitan,foo是array@sgrillon哦,我没看到那个编辑。
foo
可以包含多个对象,还是总是包含一个对象?很抱歉,在您的解决方案中,
object.name
会多次显示。
1
foo1
2
foo2
3
foo3
4
foo4 
<div class="row" ng-repeat="object in objects">
  <div ng-repeat="foo in object.foo">
    <div ng-if="foo.value > 0 || foo.ignored == 1">
      {{ object.name }}
      {{ foo.text }}
    </div>
  </div>
</div>