我有$scope
1到5 lists
,具体取决于用户输入。在每个list
中,都会有一个items
数组。我的list
名称为list1
,list2
....我的问题是当我使用$scope
声明$scope.list = [];
时,它当然不会知道哪个列表。由于我是静态命名它们并且它们的限制为5我知道我可以声明每个list
。我觉得这有点太沉重而且效率不高。是否有更好的方法根据用户输入声明每个list
?
答案 0 :(得分:1)
您可以动态地在$scope
上声明属性 - 与任何其他javascript
对象一样。
因此,$scope.myList = []
与$scope['myList'] = []
使用您的用户输入,您可以通过用户输入在作用域上创建这些列表属性。
Psuedo-code可能是:
$scope.myButtonClick = function(){
// where userInput is a number
for (i = 0; i < userInput; i++){
$scope['list' + (i+1).toString()] = [];
}
}