我创建了一个返回数组的简单工厂。我将返回的值设置为范围值,但在UI上我看不到值。
var app = angular.module('so', []);
app.controller('TestCtrl', function($scope, myFactory) {
$scope.testFactory = [];
$scope.runFactory = function() {
$scope.testFactory = myFactory.test();
}
});
app.factory('myFactory', function() {
var test = function() {
var x = [];
x['FR'] = {
country: 'France',
capital: 'Paris'
};
console.log(x);
return x;
};
return {
test: test
};
});
我创建了一个显示问题的Plunker
答案 0 :(得分:3)
那是因为您使用数组作为对象(散列)而不是数组(元素从索引0到N)。 json
过滤器不会处理这种结构。
只需使用var x = {};
代替var x = [];
,价值就会按预期显示。