仮説的な状況を想定してみましょう。あなたと私は、セレクタa-component
によって識別されるコンポーネント(AComponent)とセレクタ[is-modified]
によって識別されるディレクティブを持っています。別のコンポーネントの定義ファイルでAngular2のディレクティブで変更されたコンポーネントにアクセスするにはどうすればよいですか?
、私たちは私たちのコンポーネントとコンポーネントを変更し、当社のディレクティブを、組み合わせた以下のテンプレートを使用します。
<a-component is-modified></a-component>
documentation for a attribute DirectiveはコンストラクタがElementRefへの指示のアクセスを与えることを示していますElementRef〜コンポーネント親からのリンクはありません。
export class IsModifiedDirective
{
constructor(elementReference : ElementRef)
{
console.log(elementReference);
//no connection appears to exist between elementReference and the component
//also: ElementRef has security risks, so it should be avoided.
debugger;
}
}
Iは、必要な成分を注入する注入を使用しようとしたComponentRef<AComponent>
にElementRef
を変え。これにより、ComponentRefにプロバイダが指定されていないというエラーが発生しました。私はその後、コンポーネントAComponent
を注入しようとしましたが、それもエラーを生成しました。
ドキュメントは明確に「属性の外観や動作要素の、コンポーネント、または別のディレクティブをディレクティブは、変更する」ことを示しているが、私は指令は、それが修飾コンポーネントへのアクセスを取得する方法が表示されません。
誰でも援助を提供できますか?