Я просто пытаюсь выяснить, какая разница между конструктором и функцией onInit находится в директиве в Angular2. Мне кажется, что оба они используются, когда объект создан, так почему бы вам не только использовать конструктор?Директива Angular2, конструктор vs onInit
ответ
Первый (конструктор) связан с созданием класса и не имеет ничего общего с Angular2. Я имею в виду, что конструктор может использоваться для любого класса. Вы можете добавить в него некоторую обработку инициализации для вновь созданного экземпляра.
Вторая соответствует жизненному циклу крючок компонентов Angular2:
ngOnChanges
называется, когда входное или выходная привязка значение изменяетсяngOnInit
вызывается после первогоngOnChanges
So вы должны использовать ngOnInit
, если обработка инициализации зависит от привязок компонента (например, параметры компонента, определенные с помощью @Input
), в противном случае конструктора было бы достаточно ...
Так есть причина не всегда использовать onInit? – theva
Например, если вы хотите использовать инъецированные объекты, не устанавливая их как свойства класса ... –
Инъекция выполняется на уровне конструктора. Но использование ngOnInit для других инициализаций прекрасно ;-) –
- 1. угловая 2 пользовательская директива OnInit
- 2. Angular2 - OnInit не определен
- 3. Angular2 - Функции доступа OnInit
- 4. Page_Init vs OnInit
- 5. angular2 визуализация компонент до OnInit
- 6. Angular2 OnInit Not Firing IE11
- 7. Angular2 Impelements vs import
- 8. Angular 2 Component Constructor Vs OnInit
- 9. разница между Page_Init vs OnInit
- 10. Angular2 OnInit, не получая данные с сервера
- 11. Angular2 анимация внутри OnInit не работает
- 12. Когда использовать конструктор и когда использовать OnInit
- 13. Обязательная настраиваемая директива для наблюдения в Angular2
- 14. Extend Angular2 Директива
- 15. Angular2 директива синтаксиса селектора
- 16. Отдельная директива Scope Angular2
- 17. Angular2 директива транспортирующего элемента
- 18. Директива Angular2 присваивается шаблону
- 19. Angular2 директива visiblity
- 20. Тестирование Angular2 Директива без создания нового компонента
- 21. Использование $ onChanges vs $ onInit в угловом компоненте
- 22. Spring Integration AbstractReplyProducingMessageHandler doInit vs onInit
- 23. Директива Angular2 не отвечает на асинхронные данные
- 24. Когда создавать конструктор в машинописном тексте Angular2?
- 25. ручка настраиваемая директива с ngFor - Angular2
- 26. Директива Angular2 ожидает инициализации компонента
- 27. Директива Angular2 с областью действия
- 28. angular2-jwt: useFactory директива игнорируется
- 29. Angular2 Директива Infinite Scroll Выпуск
- 30. textbox on change директива - Angular2
Посмотрите на это http://stackoverflow.com/a/35763811/5043867 –