1

问题1:

我遇到了这个问题,我需要基于循环动态创建对象。

例子:

angular.forEach([0,1,2], function (index) {
    $scope.cc + index = buildMeProto();
});

我是以错误的方式接近这个吗?我可以$scope.element根据索引创建吗?

问题2:

我还注意到在 HTML 中,如果您执行以下操作:

<div ng-repeat="black in blacks">
    <lightbox name="black+$index" />
</div>

您不能将索引附加到对象,在这种情况下,“黑色”是一个对象,索引为 0、1,2 等。

是否有一种方法可以通过索引来创建或调用元素?

谢谢

4

1 回答 1

1

问题 1

如果要动态创建$scope属性,则需要使用该[]符号。

angular.forEach([0,1,2], function (index) {
    $scope["cc" + index] = buildMeProto();
});

问题 2 您可以在作用域上调用一个函数,通过添加一个属性来扩充对象。

$scope.addIndex = function(person, index){
    person.id = index;
};

示例 jsfiddle。

于 2013-05-16T01:30:37.610 回答