Angularjs 长度=0时在数组上添加新项的角度
如何使用angular在空数组中添加新项?这是我得到的Angularjs 长度=0时在数组上添加新项的角度,angularjs,Angularjs,如何使用angular在空数组中添加新项?这是我得到的 <body ng-controller="MainCtrl" ng-init="arr.lenght == 0 || arr[0] = ''"> <div ng-repeat="d in arr track by $index"> <input ng-model="arr[$index]" /> </div> </bo
<body ng-controller="MainCtrl" ng-init="arr.lenght == 0 || arr[0] = ''">
<div ng-repeat="d in arr track by $index">
<input ng-model="arr[$index]" />
</div>
</body>
最好是在控制器中执行 HTML 给你:
<body ng-controller="MainCtrl" ng-init="(!arr || arr.lenght == 0) ? arr = [''] : ''">
<div ng-repeat="d in arr track by $index">
<input ng-model="arr[$index]" />
</div>
</body>
您也可以在MainCtrl中执行此操作,这样会更干净。您尚未正确初始化阵列。此外,您正在ng init内部执行比较。ng init用于初始化 试试这个 HTML 见
$scope.arr = [];
$scope.mainControllerInit = function(){
if(!$scope.arr.length){
$scope.arr[0] = '';
}
}
<body ng-controller="MainCtrl" ng-init="(!arr || arr.lenght == 0) ? arr = [''] : ''">
<div ng-repeat="d in arr track by $index">
<input ng-model="arr[$index]" />
</div>
</body>
<div ng-controller="MyCtrl" ng-init="arr=[]; arr.length=0">
<input ng-model="arr[0]" />
<p> {{arr[0]}} </p>
</div>
var myApp = angular.module('myApp', []);
function MyCtrl($scope) {
}