我正在开发一款游戏,我正在尝试使用NG重复动态添加div,具体取决于后者和单词的数量。所以,例如,如果游戏中的一个任务的答案是“干净的工作表”,那么我希望NG-Repeat能够制作正确数量的列,以便它会说__ __ __ __ __ space __ __ __ __ __然后用户可以填补他们。我现在写这个:
try{
//in this example presume $stateParams.answer is "clean sheet"
var answerArr = $stateParams.answer.toString().split(' ');
var finalLines = "";
$scope.mainWordHolder = [];
angular.forEach(answerArr, function(value, key) {
var amt = value.length;
$scope.amtofLetters=[];
for (var i=0; i<amt; i++) {
$scope.amtofLetters.push(i);
}
$scope.mainWordHolder.push($scope.amtofLetters);
$scope.amtofLetters = [];
});
console.log($scope.mainWordHolder);
}catch(e){console.log("error : "+ e);}
此时我的$ scope.mainWordHolder是:
[ [ 0, 1, 2, 3, 4 ], [ 0, 1, 2, 3, 4 ] ]
这正是我想要的,所以我知道每个单词需要多少个字母。如何使用ng-repeat将其显示为div,以便我可以创建键盘,用户可以像其他热门游戏一样输入键。
我试过这个:
<div class="row">
<div ng-repeat="content in answerArr" class="col">
<div ng-repeat="contentt in mainWordHolder" class="col">
</div>
</div>
</div>
但由于某种原因我什么都没得到。任何帮助表示赞赏。
答案 0 :(得分:2)
您似乎试图在answerArr
中引用ng-repeat
,但answerArr
未存储在范围内。
当您使用ng-repeat="content in answerArr"
时,answerArr
需要存储在可在HTML中访问的范围内。
尝试在您的示波器上存储answerArr
,以便能够通过ng-repeat
访问其内容。
答案 1 :(得分:0)
您需要遍历内容&#39;它表示整个数组中的数组(外部)。试试这个:
<div class="row">
<div ng-repeat="content in answerArr" class="col">
<div ng-repeat="contentt in content" class="col">
</div>
</div>
</div>