AngularJS:为什么ngrepeat不能正常工作而不显示数据?
我做了一个简单的演示嵌套ng重复与一些条件。它没有打印任何值为什么? 实际上,我试图在两个对象迭代之后得到下面的结果 预期结果AngularJS:为什么ngrepeat不能正常工作而不显示数据?,angularjs,angularjs-directive,angularjs-scope,angularjs-ng-repeat,Angularjs,Angularjs Directive,Angularjs Scope,Angularjs Ng Repeat,我做了一个简单的演示嵌套ng重复与一些条件。它没有打印任何值为什么? 实际上,我试图在两个对象迭代之后得到下面的结果 预期结果 ght nor abc pqr 密码笔还是密码笔 \ {{field.value}} 事实上,我有两个对象。有一个键在里面,我需要显示那些相等的值。但是我没有得到预期的结果。为什么?你需要更新 ng-show="b[$index].fieldNameOrPath===field.fieldNameOrPath" 到 在json中,f
ght nor
abc pqr
密码笔还是密码笔
\
{{field.value}}
事实上,我有两个对象。有一个键在里面,我需要显示那些相等的值。但是我没有得到预期的结果。为什么?你需要更新
ng-show="b[$index].fieldNameOrPath===field.fieldNameOrPath"
到
在json中,fieldNameOrPath属性在a和b中是不同的,就像在a中它是“Sub”,在b中它是“Subject”,所以更新a或b,这样属性fieldNameOrPath在两个位置都是相同的。您需要更新
ng-show="b[$index].fieldNameOrPath===field.fieldNameOrPath"
到
在json中,fieldNameOrPath属性在a和b中是不同的,就像在a中它是“Sub”,在b中它是“Subject”,所以更新a或b,这样属性fieldNameOrPath在两个位置都是相同的。下面是答案。
在script.js文件中,我还纠正了一些类型错误
ng-show="b[$index-1].fieldNameOrPath===field.fieldNameOrPath"
下面是答案。
在script.js文件中,我还纠正了一些类型错误
ng-show="b[$index-1].fieldNameOrPath===field.fieldNameOrPath"
虽然在技术上可以对当前数据集执行此操作,但我非常建议更改数据模型,使其看起来像这样:
$scope.dataRows = [
{
ID: "00TK000000INaMXMA1",
Subject: "ght",
Priority: "normal"
},
{
ID: "00TKabc",
Subject: "abc",
Priority: "pqr"
}
];
<ion-scroll scrollbar-y="true">
<div class="row rowclass" ng-repeat="row in dataRows">
<div class="col brd text-center collapse-sm columnCss">
{{row.Subject}}
</div>
<div class="col brd text-center collapse-sm columnCss">
{{row.Priority}}
</div>
</div>
</ion-scroll>
将您的HTML转换为如下内容:
$scope.dataRows = [
{
ID: "00TK000000INaMXMA1",
Subject: "ght",
Priority: "normal"
},
{
ID: "00TKabc",
Subject: "abc",
Priority: "pqr"
}
];
<ion-scroll scrollbar-y="true">
<div class="row rowclass" ng-repeat="row in dataRows">
<div class="col brd text-center collapse-sm columnCss">
{{row.Subject}}
</div>
<div class="col brd text-center collapse-sm columnCss">
{{row.Priority}}
</div>
</div>
</ion-scroll>
{{row.Subject}}
{{row.Priority}}
但是,如果由于某种原因这是不可能的(来自其他地方的数据馈送等),那么下面是我如何修复您的表问题的:
1:您的FieldName或Path属性不匹配(一个是“Pri”和“Sub”,另一个是“Priority”和“Subject”)
2:您将需要添加另一个ng repeat。索引排列不正确,因为数据中有3个字段,数据列中有2个字段。我已经为您制作了一个Plnkr fork来解决您的问题(减去一些css样式),但我只建议您在无法更改数据模型的情况下使用它
虽然在技术上可以对当前数据集执行此操作,但我非常建议更改数据模型,使其看起来像这样:
$scope.dataRows = [
{
ID: "00TK000000INaMXMA1",
Subject: "ght",
Priority: "normal"
},
{
ID: "00TKabc",
Subject: "abc",
Priority: "pqr"
}
];
<ion-scroll scrollbar-y="true">
<div class="row rowclass" ng-repeat="row in dataRows">
<div class="col brd text-center collapse-sm columnCss">
{{row.Subject}}
</div>
<div class="col brd text-center collapse-sm columnCss">
{{row.Priority}}
</div>
</div>
</ion-scroll>
将您的HTML转换为如下内容:
$scope.dataRows = [
{
ID: "00TK000000INaMXMA1",
Subject: "ght",
Priority: "normal"
},
{
ID: "00TKabc",
Subject: "abc",
Priority: "pqr"
}
];
<ion-scroll scrollbar-y="true">
<div class="row rowclass" ng-repeat="row in dataRows">
<div class="col brd text-center collapse-sm columnCss">
{{row.Subject}}
</div>
<div class="col brd text-center collapse-sm columnCss">
{{row.Priority}}
</div>
</div>
</ion-scroll>
{{row.Subject}}
{{row.Priority}}
但是,如果由于某种原因这是不可能的(来自其他地方的数据馈送等),那么下面是我如何修复您的表问题的:
1:您的FieldName或Path属性不匹配(一个是“Pri”和“Sub”,另一个是“Priority”和“Subject”)
2:您将需要添加另一个ng repeat。索引排列不正确,因为数据中有3个字段,数据列中有2个字段。我已经为您制作了一个Plnkr fork来解决您的问题(减去一些css样式),但我只建议您在无法更改数据模型的情况下使用它
@nikil请你给plunker。很抱歉,“它是”Sub“,在b中是”Subject“,你指的plunker不起作用。-角度没有定义。请看-我不知道是什么is@nikil请你给plunker.抱歉,这是“Sub”,在b中是“Subject”您所指的plunker不起作用。-角度未定义。请看-我不知道是什么is@nikil请给plunker。很抱歉,在b中,它是“Sub”,在b中,它是“Subject”,您所指的plunker不起作用。-角度没有定义。请看-我不知道是什么