Я решил, поэтому, чтобы ответить на вопрос: Хук angular ngAfterViewInit является эквивалентом $ (document) .ready () .
Я не говорю, что это единственный способ , так как это может зависеть от того, что вы пытаетесь сделать (я новичок в Angular, поэтому не могу быть уверен).
Вот код. Это больше о способе создания дочернего компонента после того, как документ готов, чем о вызове метода, когда документ готов, поэтому большая часть этого выходит за рамки вопроса.
HTML
<div>
<!-- Template that can contain multiple components of any kind.
I want it to contain a 'ComponentA' before the page is rendered. -->
<template #containerForChildrenComponents></template>
</div>
TypeSript
export class MainComponent implements AfterViewInit {
@ViewChild('containerForChildrenComponents', {read: ViewContainerRef}) entry: ViewContainerRef;
constructor(private readonly resolver: ComponentFactoryResolver,
private readonly changeDetectorRef: ChangeDetectorRef) {
}
ngAfterViewInit(): void {
// Call the method creating a child component of class 'ComponentA' inside the template
this.createChildComponentA();
this.changeDetectorRef.detectChanges();
}
createChildComponentA() {
const factory = this.resolver.resolveComponentFactory(ComponentA);
const componentRef = this.entry.createComponent(factory);
// ...
}
}