angular.element().hide() против ngIf
Angular дает доступ к некоторым функциям jquery здесь
Мне просто интересно, есть ли разница в производительности между.hide() и использованием директивы ngIf?
Добавлены пояснения к комментариям
Я понимаю разницу между ngIf и ngShow, но меня интересует разница в производительности между использованием директив ng и вызовом angular.element() и связыванием его с помощью.hide()
2 ответа
.hide()
метод эквивалентен .css( "display", "none" )
, в то время как ng-if
удалить элемент из дома. Это главное отличие.
jqlite .hide()
действует так же, как ng-show
/ ng-hide
директивы
CSS-класс.ng-hide предопределен в AngularJS и устанавливает стиль отображения равным none (с помощью флага! Important).
hide/show
не удалит элемент из домена, а просто добавит display:none
свойство где как ng-if
было бы remove
элемент полностью из dom
,
Если в вашем пользовательском интерфейсе много элементов, вы можете использовать ng-if для создания экземпляров соответствующих элементов, что позволит сэкономить много ресурсов. По вашему мнению не нужно создавать все, а затем применять display:none
свойство, которое не должно быть показано в view
,
Если вы собираетесь remove
а также show
элемент очень часто с вашей точки зрения, hiding
это вместо removing
может улучшить performance
,