AngularJS-ngShow-它是否执行DOM组合?
我知道,即使AngularJS-ngShow-它是否执行DOM组合?,angularjs,angularjs-directive,Angularjs,Angularjs Directive,我知道,即使ngShow的计算结果为false,它仍然在指令内部执行脏检查 ngShow(比如ngShow=false)也是如此: 在ngShow内部编写DOM(因为它必须执行$compile),然后隐藏/删除内容,或者 只执行脏检查而不需要创建DOM元素 Angular.js在编译期间不创建任何DOM节点。它让浏览器构建DOM,然后简单地遍历它并收集指令 因此,如果节点在模板中,它们确实会被创建,但是由浏览器创建,而不是由Angular创建。Angular.js在编译过程中不会创建任何DOM
ngShow
的计算结果为false
,它仍然在指令内部执行脏检查
ngShow
(比如ngShow=false
)也是如此:
- 在
内部编写ngShow
(因为它必须执行DOM
),然后隐藏/删除内容,或者$compile
- 只执行脏检查而不需要创建
元素DOM
因此,如果节点在模板中,它们确实会被创建,但是由浏览器创建,而不是由Angular创建。Angular.js在编译过程中不会创建任何DOM节点。它让浏览器构建DOM,然后简单地遍历它并收集指令
因此,如果节点在模板中,它们确实会被创建,但不是通过浏览器创建的。
ng show
只会将元素设置为display:none
。因此,它们仍将位于DOM中,并且仍然由angular进行脏检查
尝试使用类似于
ng switch
的方法从DOM中实际删除元素 ng show
仅将元素设置为display:none
。因此,它们仍将位于DOM中,并且仍然由angular进行脏检查
尝试使用类似于ng switch
的方法从DOM中实际删除元素