2016-07-15 2 views
1

私は角の要素を要素の指令と考えています。私はこのような親テンプレートでそれを使用することができますheroと呼ばれるコンポーネントを考える:AngularJSコンポーネントはラッパー要素を変更できますか?

<hero myparam="something"></hero> 

私は、コンポーネントが全体の要素を担当していると、コンポーネント管理のコンテナとしてhero要素を使用したいと思います。

を期待し

ここで私は上から結合から抜け出すことを期待するものです。

<hero id="component123" class="alien" custom="foo">text</hero> 

私のカスタムコンポーネントは、指定された要素を変換し、それが適当と考えるようにそれを使用しています。

ACTUAL

しかし、コンポーネントだけでそのテンプレート内部のヒーロー要素をレンダリングすることができそうです。私が得ることができるベストは次のとおりです。

<hero myparam="something"> 
    <div id="component123" class="alien" custom="foo"> 
     text 
    </div> 
</hero> 

私はヒーローの要素が実際に英雄ではないので、これは悪いです感じるが、実際の英雄のラッパーをmerly。これはセマンティクスをミックスし、不要な余分な要素を作成します。

純粋なラッパーとしてコンポーネントを使用し、実際のコンポーネントを内部に配置するのが最良の方法ですか?

はここで遊ぶための公式のサンプルです: https://plnkr.co/edit/NKjCDS8OEngYHNrBmC5O?p=preview

答えて

1

私は要素のディレクティブとして角度成分と考えたいです。

コンポーネントは、テンプレートを更新する特殊なディレクティブと考えることができます。あなたが属性を変更したい場合は、

実際のディレクティブ(属性ディレクティブ)を使用する私のカスタムコンポーネントは、指定された要素を変換し、適当と考える それとしてそれを使用しています。

トランスフォーメーションについては、コンポーネントではなくディレクティブが必要です。

+0

こんにちは@ScottL。あなたの洞察に感謝します。私はこのトピックについてより詳しく読んで、Angular and Angular 2サンプルに基づいて判断しました。コンポーネントには独自のコンテナがあってもラッパー要素が意図されています。 –

関連する問題