2016-08-19 7 views
1

私はテキストエリア(TextAreaExt)のディレクティブを作成しました。使用されているコンポーネントからそのディレクティブのメソッドを呼び出したいと思います。ディレクティブのセレクタは "textarea"すべてのtextarea要素に影響します)。私のコンポーネントでは、次のようにします:コンポーネントからangular2ディレクティブにアクセスする

@ViewChild('TextAreaExt') txt: TextAreaExt; 

私はtxtでメソッドを正常に呼び出すことができます。しかし、もし私が複数のテキストエリアを持っていたら?私は、この代わりのようにそれを行うしたいと思います:

@ViewChild('txt') txt: TextAreaExt; 

残念ながら、上記の行はTextAreaExtクラスを返しませんが、その代わりElementRefを返します。

私はこの問題を解決して、複数のテキスト領域を持つことができますか?

答えて

0

これは、あなたが欲しいものを行う必要があります。より多くのディレクティブ、コンポーネントや他のDIは、要素の登録トークンがある場合

@ViewChild('txt', {read: TextAreaExt}) txt: TextAreaExt; 

readが指定することができます、あなたが返さ取得したい1。

+0

ありがとうございました!チャームのように働いた – marius

関連する問題