2016-08-08 9 views
2

現在、私たちも管理する2つの依存関係を持つ2つのReactベースのアプリケーション、例えばapp-aapp-bを開発しています。共有コンポーネントを含むshared-componentsパッケージと、app-aapp-bの共有ユーティリティを含むshared-utilitiesパッケージが含まれています。どちらもpackage.jsonで完全なものがあり、package.jsonにはapp-aapp-bが含まれています。お互いに依存するnpmパッケージを開発するためのベストワークフロー

依存性:

app-a
|- shared-components
|- shared-utilities

app-b
|- shared-components
|- shared-utilities

我々は例app-a用で使用する例shared-componentsのために何かを開発しているたびに、我々はあまりにも多くの手順を実行する必要があります

  1. shared-components
  2. <AwesomeComponent />shared-components内のファイルをビルドしてください。
  3. GitHubにコミット/プッシュします。
  4. package.jsonのポイント依存性がapp-aから特定のブランチまでです。
  5. 実行npm install
  6. <AwesomeComponent />を使用してください。

私たちが開発にミスを犯した場合、我々は勿論、我々が直接node_modulesフォルダにビルドファイルをコピーすることによりコミット/プッシュとnpm installをスキップすることができますステップ1からretartする必要があるが、それでも、これはかなりあります我々はコンポーネントを構築するたびに面倒です。

あなたはここでローカル開発をスピードアップするためにどのようなワークフローやヒント/アドバイスを利用しますか?

注:私たちはwebpackを使用して、ファイルとバベルを束ねるようにしています。

答えて

2

npm linkとしてください。

shared-componentsでは、単にsudo npm linkと設定します。これにより、グローバルnpmディレクトリにシンボリックリンクが作成されます(ルートとしてインストールした場合は昇格された権限が必要になります)。

次に、app-aに移動し、npm link shared-componentsを実行すると、node_modulesのフォルダがシンボリックリンクに置き換えられます。

+0

ありがとうございました!これはまさに私が探していたものでした:-)いくつかのパーミッションエラーがありましたが、それらを解決します。 –

関連する問題