2

反応とノード js アプリケーションで構成される monorepo を構築しようとしているため、反応アプリを使用して作成された frontEnd フォルダーと、すべてのサーバー コードで構成される backEnd フォルダーです。

以下の手順を実行しました

lerna をグローバルにインストール

新しいフォルダーを作成し、リポジトリを初期化しました。

新しいフォルダー内で lerna init を実行すると、2 つのファイル lerna.json、package.json、および 1 つのフォルダーがパッケージとして作成されます。

packages フォルダー内で create-react-app frontEnd を実行すると、新しい反応アプリケーションが作成されました

コマンド mkdir backEnd を実行して、packages フォルダーに backEnd フォルダーを作成します。

現在、私のパッケージ フォルダーは、frontEnd と backEnd の 2 つのフォルダーで構成されています。

フロントエンドは create-react-app に付属する package.json で構成されています

質問

package.json を frontEnd フォルダーから削除する必要がありますか?

ルート フォルダーで lerna.json と package.json を構成する方法。

どうすればアプリケーションを実行できますか?

検索しましたが、create-react-app を使用して lerna で react-nodejs アプリケーションを作成するためのソリューションが得られません

4

1 に答える 1

1

ここでこのタスクを実行しました

package.json を frontEnd フォルダーから削除する必要がありますか?

いいえ、/packagesフォルダー内の各プロジェクトには依存関係がある場合があります。ルートpackage.jsonにインストールされたモジュールは、すべてのサブプロジェクトにインストールされます。実行すると、各プロジェクトでlerna bootstrap実行されます。npm install

ルート フォルダーで lerna.json と package.json を構成する方法。

lerna.json非常にシンプルで、lerna が管理する必要があるすべてのプロジェクトを収集する構成が含まれています。

これpackage.jsonは、すべてのプロジェクト間で共有されているパッケージを追跡することです。たとえばconstant-module、両方のプロジェクトで同じバージョンでなければならないものをいくつか持つことができます。単純なフォントエンド/バックエンドでは、共有モジュールがないことが現実的です。

どうすればアプリケーションを実行できますか?

を実行すると、追跡されているすべてのプロジェクトlerna run startで lerna が実行されます。npm run startしたがって、アプリケーション全体を起動する方法を知っておく必要があります。

私の例ではstart、フロントエンド ファイルを静的に提供し、フロントエンド専用の別の Web サーバーを起動したくなかったため、バックエンド プロジェクトにのみ実装しました。

于 2020-06-03T15:09:34.163 に答える