每个施加在HTML元素上的Angular Directive,运行时都会生成一个新的实例

99 阅读1分钟

每个施加在HTML元素上的Directive,运行时都会生成一个新的实例。

这些实例的ngOnInit hook执行完毕之后,再统一支持ngAfterViewInit:

上图这个focus-lock class的出现,是由于@HostBinding装饰的属性shouldLock为true的原因:

通过elementRef指向的元素可以分辨出当前Directive实例到底施加在哪个HTML元素上:

这个setTimeout被Angular zone接管了:


这是被mock过的:



更多Jerry的原创文章,尽在:“汪子熙”: