多分、これは2つの質問の1つです。私は、あなたがAngular 2のComponentの中で使用される指示子を明示的に宣言しなければならないことを知っています。これはComponentのComponentに伝播しますか?そうでなければ、第2に、コンポーネントで宣言された変数は、子に伝播するか、コンポーネントに明示的に渡す必要がありますか?ディレクティブ/スコープの継承
答えて
ベータ版14では、使用されているすべての指令を@Component
のdirectives
配列に明示的にリストする必要があります。 2番目の質問では、コンポーネントで宣言された変数(例:this.name
)は子コンポーネントに伝播されません。そのためには、<child [item]="parentItem"></child>
などの属性を使用してコンポーネントテンプレートに明示的に渡す必要があり、子コンポーネントには@Input item
プロパティが含まれている必要があります。
EDIT: コメントからの明確化を組み込むこと... bootstrap
機能でグローバルにしかディレクティブを登録することが可能です。親で宣言されたディレクティブは、ではなく、は子コンポーネントによって継承されます。
bootstrap(App, [
PLATFORM_DIRECTIVES,
provide(PLATFORM_DIRECTIVES, {useValue: [SomeDirective, SomeComponent], multi:true})
]);
direcitveを 'provide(PLATFORM_DIRECTIVES、{useValue:[SomeDirective、SomeComponent]、マルチプル:true}) '、パイプ' bootstrap(App、[PLATFORM_PIPES、{useValue:RainbowizePipe、multi:true})])と同じ ' –
明確化のためにありがとう – tomastrajan
- 1. BuildManager継承の継承
- 2. データ継承の継承
- 3. ディレクティブスコープ
- 4. Entity Frameworkとの継承継承
- 5. Java ORM:複数(継承)継承
- 6. CSSが継承しない継承
- 7. 継承する継承するインターフェイス
- 8. 継承
- 9. 継承
- 10. 継承
- 11. 継承された要素でディレクティブスコープを共有するにはどうすればよいですか?
- 12. C++の継承
- 13. バックボーンビューの継承
- 14. ハイバネートアノテーションの継承?
- 15. ジェイドテンプレートの継承
- 16. NSStringの継承
- 17. ルアの継承
- 18. operator()の継承
- 19. プロトコルメソッドの継承
- 20. VB.netの継承
- 21. バックボーンビューの継承
- 22. JavaScriptの継承
- 23. Goの継承
- 24. jsfの継承
- 25. CSSコントロールの継承 - 継承他のコントロールスタイル私の質問に
- 26. PHP Doctrine継承
- 27. 継承とインライン?
- 28. Javascriptクラス継承
- 29. map継承
- 30. 継承:メソッド
あなたの言いたいことを実行する予定です。 [この問題を見る](https://github.com/angular/angular/issues/2844)。しかし、それは押し戻され続けるので、あなたは待たなければなりません。 –
モジュール化のアイデアは、コンポーネント/モジュールが暗黙的な依存関係を持たないことを指示するため、これはひどく厄介なものだと思います。もしあなたが他の場所にあなたの子コンポーネントを移動させるならば、それは壊れます。これは、通常、継承または依存性注入によって解決されます。これは、子コンポーネントと親コンポーネントの間に強い結びつきを作り、子コンポーネントがそれ自身で移動することを不可能にします。 – jornare
関数型プログラミングと同じように意味があると思います...残念ながら、私はいくつかの作業があることを意味します;) – djvs