3
배열에 이름을 추가하는 작은 코드를 썼습니다. 나가 얻고있는 문제는 나가 동일한 이름을 두번 이상 추가하는 시도하는 경우에 저를 허용하지 않을 것이라는 점이다. 중복 된 이름을 추가하려고 시도한 후에도 다른 이름을 허용하지 않습니다. 내각 코드는 다음과 같습니다AngularJs 배열에서 중복을 추가하지 않습니다.
app.controller('DirectoryController', function($scope){
$scope.name='';
$scope.names= [];
$scope.addName = function(){
$scope.names.push($scope.name);
}
}); 기본 NG 반복함으로써
<span ng-repeat="name in names track by $index">{{name}}<br/></span>
참조에 의해 배열의 항목을 추적하고 중복 리터럴가 동일 할 수 있습니다 :
그리고 여기가
<div ng-controller= "DirectoryController">
<h3>Name:</h3><input type="text" ng-model='name'>
<button ng-click = "addName()">Save</button>
<hr/>
<span ng-repeat="name in names">{{name}}<br/></span>
</div>
약간 명확히하기 위해 @dustyrockpile은 실제로 배열에 중복 된 내용이 있지만 출력에서 볼 수 없다고 말합니다. 아마도 $ scope.names의 내용을 들여다 보면서 {{names | json}}을 확인하십시오. –
Thanks @ JohnMunsch, 명확히하기 위해 답을 업데이트했습니다. – dustyrockpyle