1. 程式人生 > >angularJS中的ng-show、ng-if指令

angularJS中的ng-show、ng-if指令

基本 hid bsp 多個 本質 相同id 插入 生成 -h

angularJS中的ng-show、ng-hide、ng-if指令都可以用來控制dom元素的顯示或隱藏。

1. ng-show和ng-hide

根據所給表達式的值來顯示或隱藏HTML元素。元素會渲染出來,只是通過css隱藏了。 即DOM中會存在, 通過選擇符可以獲取到此元素的。

2.ng-if指令

可以根據表達式的值在DOM中生成或移除一個元素。如果賦值給ng-if的表達式的值是false,那對應的元素將會從DOM中移除(DOM中不會存在, 通過選擇符無法選擇到),否則生成一個新的元素插入DOM中。ng-if同no-show和ng-hide指令最本質的區別是,它不是通過CSS顯示或隱藏DOM節點,而是刪除或者新增結點。

使用:

ng-show在第一次渲染時 消耗資源會比較大;

ng-if在需要頻繁顯示或隱藏時 消耗資源會比較大。

所以若頁面基本無變化,可以用ng-if

需要頻繁顯示或隱藏時, 用ng-show。

與之相關的一個小點:

id元素需唯一,否則若存在多個相同id的元素時,js只會選擇DOM中第一個。適當時候用ng-if

angularJS中的ng-show、ng-if指令