8

私は Angular2 を初めて使用し、別のアプリケーションであるアプリケーション内からプレゼンテーション コンポーネントのセット全体を再利用する可能性があるかどうかを調べることに興味がありますか?

たとえば、MyApp という Angular 2 アプリケーションがあり、この中に作成した共通コンポーネントがいくつかあります。これらは app/components/common フォルダーにあり、それぞれに TypeScript、Sass、および HTML ファイルが含まれています。

私は Gulp を使用して TypeScript を JS に、Sass を CSS にコンパイルします。

これらの共通コンポーネントは他の Angular 2 アプリでも共通である可能性があるため、MyOtherApp と呼ばれる別の Angular 2 アプリでそれらを使用したいと思います。

すべての共通コンポーネントを MyApp から引き出して、MyOtherApp で使用できるようにしたいと考えています。

これは可能ですか?もしそうなら、このタイプのコンポーネントの共通共有への最良のアプローチは何ですか?

私が言ったように、ビルド/実行には Gulp を使用し、Angular アプリの構成セットアップには System.js も使用しています。

必要に応じて、私が試したコードの一部を共有できますが、共有するのに役立つものがわからないので、役立つ可能性があるものをリクエストしてください。共有します.

4

2 に答える 2

4

最も一般的な方法は、Angular 自体や Angular Material 2 ライブラリなどと同じように、NgModule を公開する別のライブラリを構築することだと思います。ただし、ライブラリのビルド スクリプトをセットアップするのにより多くの労力が必要になり、デバッグがより困難になります。

もう 1 つのオプションは、プロジェクトごとに Angular ブートストラップ関数を使用して、異なるエントリ ポイント ファイルを持つすべてのアプリケーションに対して単一の TypeScript プロジェクトを用意することです。

于 2016-10-06T17:15:45.340 に答える