作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我尝试使用一个对象进行过滤,并通过对象中的 ng-repeat = (key, value)
打印出过滤器。
因为我尝试了各种 filters ,我看到 ng-repeat
似乎不适用于对象的 $
属性,这在过滤时非常有用。
即使你使用$
This link显示它似乎不适用于以 $
开头的对象 $scope.testObj = {};
$scope.testObj.test = 'test';
$scope.testObj.$ = '$';
$scope.testObj.$test = '$test';
<div ng-repeat = "(key, value) in testObj">
<p>{{key}}: {{value}}</p>
</div>
最佳答案
AngularJS 还不支持它。有一个 open issue on Github .
但是你可以用一些代码让它工作:
app.controller('MainCtrl', function($scope) {
var getProperties = function(input){
var result = [];
for(var propertyName in input) {
result.push({key : propertyName, value : input[propertyName]});
}
return result;
};
$scope.testObj = {};
$scope.testObj.test = 'test';
$scope.testObj.$ = '$';
$scope.testObj.$whatever = '$whatever';
$scope.testObjProperties = getProperties($scope.testObj);
});
然后在你的 View 中显示它:
<div ng-repeat="property in testObjProperties">
<p>{{property.key}} : {{property.value}}</p>
</div>
这是一个有效的代码:http://plnkr.co/edit/LFrfLcpoOg0ScEY89p25?p=preview
关于angularjs - ngrepeat 不迭代 $ 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27800338/
我是一名优秀的程序员,十分优秀!