私は種類の異なるオブジェクトを持っています。それにもかかわらず、私はすべてのタイプを私の1つのAngular2コンポーネントに表示したい。ここで 私はそのために使用するコードです:フォルダ構造に応じてコード行を追加する - プリコンパイラ?
in for-loop:
<div [ngSwitch]="Type">
<c-test *ngSwitchCase="'Test'"></c-test>
<c-test2 *ngSwitchCase="'Test2'"></c-test2>
<etc>
</div>
時間が経つにつれて、私のアプリケーションは、新しいオブジェクトの「タイプ」を追加し、拡張することができます。上記の種類のコードを別の場所で使用しているので、追加された各タイプに対して、これらの場所のすべてに行を追加したくありません。 C++プリコンパイラに似た何かを使用してフォルダ構造を調べ、それに応じてこれらの行を追加する方法はありますか?
例:次のフォルダ構造を持っているとします。私のコードで
Objects
|- TypeA
|- TypeB
|- etc
、私は、このようなものがあります:に結果の
<div [ngSwitch]="Type">
<precompile *ngFor="some looping through folders">
<"c-$FoundFolder" *ngSwitchCase="'$FoundFolder'"><"c-$FoundFolder">
</precompile>
</div>
:、私は私がしたいことは、この形で存在していないことを知っている
<div [ngSwitch]="Type">
<c-TypeA *ngSwitchCase="'TypeA'"></c-TypeA>
<c-TypeB *ngSwitchCase="'TypeB'"></c-TypeB>
<etc *ngSwitchCase="'etc'"></c-etc>
</div>
をが、似たようなことを達成する方法はありますか?はいの場合、どうですか?
どうもありがとうございました、これは私がやりたいことに非常に近いように思わ!私はそれを試して、それがどうなるかについてコメントします。 – user2065501
この方法では少し問題があります。ドキュメントでは、使用可能なすべてのコンポーネントをデータとともに返す関数を使用します。しかし、私は名前を知ってコンポーネントをロードしたいと思う(またはそれに類するもの)。基本的に、ドキュメントの例を挙げる:広告が既にロードされている ' 'の代わりに、私はしたいと思います: ' 'ここで、MyAdTypeは文字列またはファイル、またはadd-bannerによってコンポーネントをロードするために使用されるものです。それは可能ですか? –
user2065501
サンプルプランナーを作成して、何をしたいのか教えてください。私はあなたを助けることができるでしょう。ありがとう! – Lambo14