0

ファイルを作成した内部スキャフォールディング アプリケーションがありyarn.lockます。これで、このアプリケーションは他の Node アプリケーションによって使用されます。Yarn は、メイン アプリの依存関係をインストールするときに、依存関係のロック ファイルを考慮しますか?

4

1 に答える 1

2

そのままでは、答えはnoです。

しかし、回避策がありますこの議論を見た場合、使用する提案が提供されています

yarn add file:path-to-submodule

これは私の意見では、サブモジュール パッケージを処理するためのより決定論的なアプローチです。だからあなたができることはこれです:

mkdir module && cd module
yarn init
mkdir submodule && cd submodule
yarn init                // Name this package 'submodule'
yarn add express         // Just an example package
rm -rf node_modules      // To see if node_modules is going to be regenerated
ls                       // package.json yarn.lock
cd ..
yarn init
yarn add react           // Another sample module
yarn add file:submodule  // Adds submodule as a local dependency
yarn 
cd node_modules && ls    // Both react & express and their dependencies are now in module/node_modules
cd .. && cd submodule && ls // No node_modules created within /submodules

を使用して、メイン モジュール内にローカル サブモジュールが正常に作成されたことがわかります。yarn add

この方法を使用する利点は次のとおりです。

  • 各パッケージの 1 つのコピーのみが保存されます
  • すべてのパッケージが 1 つの場所にあります (node_modules フォルダーは 1 つだけです)
  • サブモジュールにするパッケージとそうでないパッケージを選択できるので、驚くことはありません
  • パッケージフォルダー内の場所のおかげで、パッケージに追加された秘密のサブモジュールはありません
于 2016-10-24T06:03:42.340 に答える