2016-07-13 13 views
0

同じコードベースを使用して異なるサイトを作成するプロジェクトにあります。 ビルドプロセスで何とか指定したサイトごとにブランドスタイルと設定をしたいと思います。同じコードベースの異なるブランド化

誰もがこれを達成するための最良の方法を考えていますか?

答えて

1

私は異なる環境(dev、test、prod)を扱うのと同じ方法で、さまざまなサイトを扱います。多くの変更がない場合は、サイトが実行される各サーバーで環境変数を使用して、サイトを定義します。あなたのコードは条件付きで行います(例:スタイリングのためにクラスsite-xを本文に追加するなど)。

dotenvのようなものを使用すると、設定環境変数をより簡単にすることができます(スクリプトが環境を設定する場合、Windowsは* NIXとは異なります)。そうすれば、特定のサイトの外観をテストしたいときに、実際の環境変数ではなくファイルを変更しています。

サイト間で異なっており、さまざまな設定項目があるなら、あなたは、複数の設定ファイル(config-site-one.jsconfig-site-two.js)とMY_SITE_NAMEのようないくつかの環境変数に基づいて正しい設定を返し中央config.jsファイルを持つことができます。

実際にどこかで(?)送信するようにサイトをパッケージ化する場合は、webpack blahblahblah --site=site-oneのようなフラグを付けてビルドコマンドを実行できます。

yargsを使用して 'site'変数を取得し、それをビルドプロセスで使用することができます。

+0

ありがとう、リンクは私に確かにいくつかのアイデアを与えた:) – TWL

関連する問題