我想在angular.I中創建動態範圍變量,我使用循環將變量名稱設置爲v1,v2,v3,但仍然沒有成功。 任何想法如何實現這一目標?angularjs中的動態範圍變量
JS
for (var i = 0; i < 4; i++) {
$scope.v_i='value'+i;
}
HTML
<div>{{v1}}</div>
<div>{{v2}}</div>
<div>{{v3}}</div>
我想在angular.I中創建動態範圍變量,我使用循環將變量名稱設置爲v1,v2,v3,但仍然沒有成功。 任何想法如何實現這一目標?angularjs中的動態範圍變量
JS
for (var i = 0; i < 4; i++) {
$scope.v_i='value'+i;
}
HTML
<div>{{v1}}</div>
<div>{{v2}}</div>
<div>{{v3}}</div>
可以使用$scope
對象的typeof Array
。 但我會將它們包裝到$scope
對象封裝器items
。 請參閱下面兩種方法。
VIEW
<div ng-app="app" ng-controller="MainController">
{{v0}}
<br/> {{v1}}
<br/> {{v2}}
<br/> {{v3}}
<br/>
<br/> {{items}}
<br/>
<br/>
<div ng-repeat="item in items">
{{item}}
</div>
</div>
控制器
angular
.module('app', [])
.controller('MainController', MainController)
function MainController($scope) {
$scope.items = {};
for (var i = 0; i < 4; i++) {
$scope['v' + i] = 'value' + i;
// or add to object wrapper
$scope.items['v' + i] = 'value' + i;
}
}
如何在視圖中顯示? – query
鑑於HTML,看起來它必須是'$ scope ['v'+ i]'。另外,說你使用它作爲'Array'可能有點誤導。您在對象上使用括號表示法。 –
對不起,只要刪除控制器和視圖上的'_'。但方法是相同的...更新上面的答案。 –
你爲什麼不讓它數組? – Vivz