[ANGULAR] Angular 2에서 구성 요소를 수동으로 인스턴스화 할 수 있습니까?
ANGULARAngular 2에서 구성 요소를 수동으로 인스턴스화 할 수 있습니까?
해결법
-
1.예, 지원됩니다. 예를 들어 생성자에 주입하거나 @viewChild ( 'targetName') 쿼리와 주입 할 수있는 componentresolver를 사용하여 예를 들어 획득 할 수있는 ViewComponentRef가 필요합니다.
예, 지원됩니다. 예를 들어 생성자에 주입하거나 @viewChild ( 'targetName') 쿼리와 주입 할 수있는 componentresolver를 사용하여 예를 들어 획득 할 수있는 ViewComponentRef가 필요합니다.
https://stackoverflow.com/a/36325468/217408 의이 코드 예제는 예를 들어 * ngfor와 함께 구성 요소를 동적으로 추가 할 수 있습니다.
@Component({ selector: 'dcl-wrapper', template: `<div #target></div>` }) export class DclWrapper { @ViewChild('target', {read: ViewContainerRef}) target; @Input() type; cmpRef:ComponentRef; private isViewInitialized:boolean = false; constructor(private resolver: ComponentResolver) {} updateComponent() { if(!this.isViewInitialized) { return; } if(this.cmpRef) { this.cmpRef.destroy(); } this.resolver.resolveComponent(this.type).then((factory:ComponentFactory<any>) => { this.cmpRef = this.target.createComponent(factory) }); } ngOnChanges() { this.updateComponent(); } ngAfterViewInit() { this.isViewInitialized = true; this.updateComponent(); } ngOnDestroy() { if(this.cmpRef) { this.cmpRef.destroy(); } } }
from https://stackoverflow.com/questions/37063455/is-it-possible-to-manually-instantiate-component-in-angular-2 by cc-by-sa and MIT license
'ANGULAR' 카테고리의 다른 글
[ANGULAR] Angular 4의 HashlocationStrategy 및 쿼리 매개 변수 (0) | 2020.11.28 |
---|---|
[ANGULAR] Angular 2 rc2 새로운 양식 (0) | 2020.11.28 |
[ANGULAR] 주요 앱 외부의 각형 구성 요소 렌더링 (0) | 2020.11.28 |
[ANGULAR] 앵글 유니버설 서버 렌더링 WebSocket. (0) | 2020.11.28 |
[ANGULAR] Angular2 라우팅 : 두 번로드 중입니다 (0) | 2020.11.28 |