2017-07-11 9 views
2

現在、角度4のハングアップを取得し始めています。具体的には動的コンポーネントの部分です。私は成功を収めてngComponentOutletアプローチを複製するために管理角度4 ngComponentOutletと遅延ロードモジュール

hereを説明し、plunkr here

は、今私がやりたいものを動的コンポーネントを含むモジュールをロード怠け者です。私はon Githubがこの機能が実装されている必要がありますが、私はソースの変更を自分自身で解釈するには十分な経験がありません。このアプローチの例はどこにも見つかりません。

また、私はa4ルータとwebpack(重要な場合)に依存せずに、この種の遅延ロードを実現したいと考えています。

誰も助けてくれるでしょうか?

TIA

+0

[公式文書](https://angular.io/api/common/NgComponentOutlet)を見ましたか? – ulubeyn

+0

この記事では、すべての答えを提供する必要があります[ここでは、角度の動的コンポーネントについて知っておくべきことがあります](https://hackernoon.com/here-is-what-you-need-to-know-about-dynamic-コンポーネント間角度-ac1e96167f9e)。ここで明確化の質問をする –

+0

あなたは私の日を作った、私は** compileModuleAndAllComponentsAsync **について知らなかった。非常に良い記事、多くのありがとう! – jurito

答えて

2

あなたはコンパイラの方法compileModuleAndAllComponentsAsyncを使用することができます。これらの行に沿ったもの:

ngAfterViewInit() { 
    System.import('app/t.module').then((module) => { 
     _compiler.compileModuleAndAllComponentsAsync(module.TModule) 
     .then((compiled) => { 
      const m = compiled.ngModuleFactory.create(this._injector); 
      const factory = compiled.componentFactories[0]; 
      const cmp = factory.create(this._injector, [], null, m); 
     }) 
    }) 
} 

詳細はHere is what you need to know about dynamic components in Angularを参照してください。

+0

魅力のように働いて、ありがとう。 – jurito

+0

@jurito、それは幸運を助けてうれしい –

関連する問題