2016-06-15 6 views
0

私はよく@ViewChildを理解して使用しますが、{read}小道具は何のために使用されていますか? @ ViewChild( 'putStuffHere'、{read:ViewContainerRef})putStuffHere;それは代わりElementRef一方のViewContainerRefインスタンスへのアクセスを有することができangular2、読み込まれる内容:ViewChildで使用されるプロパティ?

import {Component, ViewChild, ViewContainerRef, ComponentResolver} from '@angular/core'; 

@Component({ 
    selector: 'my-component', 
    template `<h1>my-component</h1>` 
}) 
class MyComponent{} 

@Component({ 
    selector: 'my-app', 
    template: ` 
    <h2>Above</h2> 
    <div #putStuffHere></div> 
    <h2>Below</h2> 
    ` 
}) 
export class AppComponent { 
    @ViewChild('putStuffHere', {read: ViewContainerRef}) putStuffHere; 

    constructor(
     public view:ViewContainerRef, 
     public compResolver:ComponentResolver 
){} 

    ngAfterViewInit(){ 
    this.compResolver.resolveComponent(MyComponent) 
     .then(factory => { 
     this.putStuffHere.createComponent(factory);  
     }) 

    } 
} 

に関して

ショーン

答えて

1

は、以下のコードを参照してください。ここで

はサンプルです:

@ViewChild('putStuffHere') putStuffHere1:ElementRef; 
@ViewChild('putStuffHere', {read: ViewContainerRef}) putStuffHere2:ElementRef; 
関連する問題