ngRepeat 和基于集合值的过滤列表
ngRepeat and filtering list based on collection value
下面是我 运行 通过 ng-repeat
的数据示例。是否可以通过 ngRepeat 运行 它但只能在 HTML 中 lineNum >= 1
和 lineNum <= 10
的地方?我可以通过创建单独的变量并使用 linq.js 之类的另一个插件来做到这一点,但我希望避免这种情况。
{
"00100":{ lineNum: 1.00, Columns: {..} }
"00200":{ lineNum: 2.00, Columns: {..} }
"02000":{ lineNum: 20.00, Columns: {..} }
"20000":{ lineNum: 200.00, Columns: {..} }
}
是的,只需在 ngRepeat
元素上使用 ng-if
。我还假设您的数据有语法错误并假设它看起来像:
$scope.myData = {
"00100":{ lineNum: 1.00, Columns: {..} }
"00200":{ lineNum: 2.00, Columns: {..} }
"02000":{ lineNum: 20.00, Columns: {..} }
"20000":{ lineNum: 200.00, Columns: {..} }
}
还有 HTML
<div ng-repeat="(key, value) in myData" ng-if="value.lineNum > 1 && value.lineNum < 10">
{{key}}
</div>
不确定,你的数据是什么类型,但数据列表如下:
var records = {
lineNum: 1.00, Columns: {..},
lineNum: 2.00, Columns: {..},
lineNum: 20.00, Columns: {..},
lineNum: 200.00, Columns: {..},
};
你可以这样写:
<div ng-repeat="record in records" ng-if="record.lineNum >= 1 && record.lineNum <= 10">{{record.lineNum}}
</div>
这是一种解决方法,因为您想在 HTML 本身中进行。
下面是我 运行 通过 ng-repeat
的数据示例。是否可以通过 ngRepeat 运行 它但只能在 HTML 中 lineNum >= 1
和 lineNum <= 10
的地方?我可以通过创建单独的变量并使用 linq.js 之类的另一个插件来做到这一点,但我希望避免这种情况。
{
"00100":{ lineNum: 1.00, Columns: {..} }
"00200":{ lineNum: 2.00, Columns: {..} }
"02000":{ lineNum: 20.00, Columns: {..} }
"20000":{ lineNum: 200.00, Columns: {..} }
}
是的,只需在 ngRepeat
元素上使用 ng-if
。我还假设您的数据有语法错误并假设它看起来像:
$scope.myData = {
"00100":{ lineNum: 1.00, Columns: {..} }
"00200":{ lineNum: 2.00, Columns: {..} }
"02000":{ lineNum: 20.00, Columns: {..} }
"20000":{ lineNum: 200.00, Columns: {..} }
}
还有 HTML
<div ng-repeat="(key, value) in myData" ng-if="value.lineNum > 1 && value.lineNum < 10">
{{key}}
</div>
不确定,你的数据是什么类型,但数据列表如下:
var records = {
lineNum: 1.00, Columns: {..},
lineNum: 2.00, Columns: {..},
lineNum: 20.00, Columns: {..},
lineNum: 200.00, Columns: {..},
};
你可以这样写:
<div ng-repeat="record in records" ng-if="record.lineNum >= 1 && record.lineNum <= 10">{{record.lineNum}}
</div>
这是一种解决方法,因为您想在 HTML 本身中进行。