Angular允许访问一些jquery函数here
我只是想知道.hide()和使用ngIf指令之间的性能是否有任何差异?
添加了来自评论的说明
我理解ngIf和ngShow之间的区别,但我想知道使用ng指令与调用angular.element()并使用.hide()链接它之间的性能差异
答案 0 :(得分:3)
hide/show
不会从dom中删除该元素,只会添加display:none
属性ng-if
remove
元素dom
完全来自display:none
。
如果你的UI有很多元素,你可以使用ng-if来实例化那些可以节省大量资源的相关元素。由于您的视图不需要创建所有属性,然后将view
属性应用于remove
中不应显示的属性。
如果您经常从视图中show
和hiding
添加一个元素,removing
而不是performance
可以改善{{1}}。
答案 1 :(得分:1)
.hide()
方法相当于.css( "display", "none" )
,而ng-if
从dom中删除元素。这是主要的区别。
jqlite .hide()
的行为方式与ng-show
/ ng-hide
指令相同
.ng-hide CSS类在AngularJS中预定义并设置显示 样式为无(使用!important标志)。