我对角度很新,我正在尝试一些事情。
我创建了一个显示(切换)菜单的控制器。在菜单中有一些li和一些指令。其中一人有ng-click="erase()"
。单击它时,我希望删除(删除)元素本身。有可能这样做吗?在jQuery中,我认为:element.remove();
这是我的代码:
<div ng-controller="DeathrayMenuController">
<button ng-click="toggleMenu()">Toggle Menu</button>
<ul ng-show="menuState">
<li ng-click="stun()">Stun</li>
<li ng-click="disintegrate()">Disintegrate</li>
<li ng-click="erase()">Erase from history</li>
</ul>
</div>
ng-click="erase()"
应从li
删除整个ul
。
这是我的代码:
$scope.erase = function(){
console.log($scope);
};
希望有人可以帮助我。非常感谢!
答案 0 :(得分:3)
要删除元素,可以使用ng-if
指令。这将在表达式为false时删除元素。
以下是一个例子:
$scope.erase = function() {
$scope.erased = true;
}
<li ng-click="erase()" ng-if="!erased">Erase from history</li>
在Angular中,您的JavaScript不应该操纵DOM。相反,您的JavaScript操纵$scope
,指令操纵DOM。