2017-02-24 6 views
2

ここに私のコードが動的に作成したコンポーネントにメンバー属性にアクセスすることはできません

テンプレートです

Property 'close' does not exist on type 'Component'.) 

が、私がするときconsole.log(this.cmpRef.instance);私は

近いModalComponent EN持つEventEmitterです(クローズを含む)すべてのメンバーとの私のコンポーネントを見ることができます:

@Output() close: EventEmitter<any> = new EventEmitter<any>(); 
+0

'close'機能を示したコードを追加してください。 –

+0

@GünterZöchbauerは私の質問 –

答えて

2

はあなたのエラーメッセージのように思えることは、静的エラーではなく、実行時エラーです。

(this.cmpRef.instance as ModalComponent).close.subscribe(e => console.log(e)); 
+1

を編集しました。ありがとうございました –

+0

"ModalComponent"を変数に入れることは可能ですか? –

+1

@BenjaminMcFerren私はそうは思わないが、私はTSスペシャリストではない。あなたはそれを関数に入れ、この関数を変数に代入することができます。 –

1

あなたはそれを拾うために活字体コンパイラのModelComponentにあなたのインスタンスをキャストする必要があります。

(<ModalComponent>this.cmpRef.instance).close.subscribe(e => console.log(e)); 
+0

あなたは正しいです、私はそれをキャストしなければならなかった、ありがとう –

関連する問題