я написать простой angularJS код:AngularJS не создает новый объект
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8">
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.4.0-beta.1/angular.min.js"></script>
</head>
<body ng-app="myApp">
<script>
angular.module('myApp', []).controller('BooksController', function($scope){
$scope.books = [{'name':'aaa'}, {'name':'bbb'}, {'name':'ccc'}];
$scope.addBook = function(newBook){
$scope.books.push(newBook);
}
});
</script>
<div ng-controller="BooksController">
<ul>
<li ng-repeat="book in books">{{book.name}}</li>
</ul>
<input ng-model=aBook.name />
<a href=# ng-click="addBook(aBook)">add to list</a>
</div>
</body>
</html>
http://plnkr.co/edit/EIT32t8NgRiLchVXgooL?p=preview
, когда я добавить новый элемент в список, он работает правильно. , но когда я хочу добавить еще один новый элемент, последний элемент перезаписывается, как вы можете видеть в URL-адресе. Почему? что происходит?
Не должно быть: нг-модель = "book.name" вместо: ng-model = aBook.name – Manube
@Manube Нет, переименование 'aBook' на' book' не решает проблему, поскольку вы можете протестировать по адресу. – ali