在控制器中对 ng-repeat 数组使用 $filter
Use $filter in controller for ng-repeat array
我正在尝试将 $filter
应用于从控制器填充 ng-repeat
的数组。此数组为 ng-repeat="l in list"
.
指定 "list" 的内容
我可以做这样的事情吗?
var sidePanelFilter = $filter('sidePanel');
if (condition) {
var numArray = myService.items;
$scope.list = sidePanelFilter(numArray);
}
这是我的 HTML:
<li ng-repeat="l in list | orderBy track by $index">
{{ l }}
</li>
我想在控制器中指定$filter
,这样我就可以动态生成list
。我不想更改数组的内容。
编辑
Here is a codepen 重现了我的问题。
根据我们的评论,您想要更改 数组的项目,而不是return 数组的子集。所以你想要的不是 filter
而是像 array.map
.
这样的方法
numArray = numArray.map(function(i) {
return i + " yards";
});
我正在尝试将 $filter
应用于从控制器填充 ng-repeat
的数组。此数组为 ng-repeat="l in list"
.
我可以做这样的事情吗?
var sidePanelFilter = $filter('sidePanel');
if (condition) {
var numArray = myService.items;
$scope.list = sidePanelFilter(numArray);
}
这是我的 HTML:
<li ng-repeat="l in list | orderBy track by $index">
{{ l }}
</li>
我想在控制器中指定$filter
,这样我就可以动态生成list
。我不想更改数组的内容。
编辑
Here is a codepen 重现了我的问题。
根据我们的评论,您想要更改 数组的项目,而不是return 数组的子集。所以你想要的不是 filter
而是像 array.map
.
numArray = numArray.map(function(i) {
return i + " yards";
});