Как doess $ doCheck не окажет никакого влияния, если вызывается $ doChanges?

0

Официальная документация AngularJS предоставила следующую информацию по этому вопросу.


$ doCheck() - вызывается на каждом обороте цикла дайджеста. Предоставляет возможность обнаруживать изменения и вносить изменения в них. Любые действия, которые вы хотите предпринять в ответ на обнаруженные вами изменения, должны быть вызваны из этого крючка; реализация этого не влияет на то, когда вызывается $ onChanges. Например, этот крючок может быть полезен, если вы хотите выполнить глубокую проверку равенства или проверить объект Date, изменения которого не будут обнаружены детектором угловых изменений и, таким образом, не будут запускать $ onChanges. Этот крючок вызывается без аргументов; при обнаружении изменений вы должны сохранить предыдущие значения для сравнения с текущими значениями.


Я исследовал в Интернете, но не смог найти никакой информации, связанной с тем, как вызов $ onChanges приведет к вызовам $ doCheck void. Кто-то, пожалуйста, предоставьте дополнительную информацию.

  • 0
    Как вы делаете вывод, что вызов $ onChanges лишит законной силы $ doCheck из этой документации. Они кажутся двумя отдельными крючками.
Теги:
angularjs-directive

1 ответ

1

$ OnChanges и $ doCheck могут легко жить бок о бок. Крючок $ doCheck не влияет на крюк $ onChanges. Конечно, поля, проверенные в крюке $ doCheck, больше не нужно обрабатывать в крюке $ onChanges. В угловом 2 даже рекомендуется не использовать эти 2 крючка вместе.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню