非常新的 Angular 并且非常困惑如何使用 $destroy 方法来删除 API 文档中提到的元素:
http://docs.angularjs.org/api/ng .$rootScope.Scope
这是我尝试过的 HTML:
<div ng-controller="TodosController">
<div class="tasks" ng-show="todos">
<ul ng-repeat="todo in todos">
<li>
<button ng-click="todos.$destroy(todo)">Delete</button>
<b>{{todo.name}}</b>
</li>
</ul>
</div>
</div>
和 JS:
var myApp = angular.module('myApp', []);
function TodosController($scope) {
$scope.todos = [{
name: "Learn angular",
estimate: 8,
done: true},
{
name: "Install java",
estimate: 2,
done: false},
{
name: 'Uninstall ruby',
estimate: 3,
done: false}];
}
这是我上面的小提琴:http: //jsfiddle.net/5Mzda/26/
在旧版本的 Angular 中,可以使用 $remove 方法删除元素。
<script type="text/javascript" ng:autobind src="http://code.angularjs.org/0.9.16/angular-0.9.16.js"></script>
<div ng:controller="TodosController">
<div class="tasks" ng:show="todos">
<ul ng:repeat="todo in todos">
<li>
<div ng:controller="TodoEditorController">
<button ng:click="todos.remove(todo)">Delete</button>
<b>{{todo.name}}</b>
</div>
</li>
</ul>
</div>
</div>
以上在这个小提琴中工作:
http://jsfiddle.net/bpTXe/195/
但是,在更高版本的 Angular 中使用$destroy()
、$remove()
和remove()
不起作用。有什么建议么?