私はreactjsの初心者です。reactjsアプリケーションをデフォルトのポートが3000であるreactサーバーで実行する代わりにTomcatサーバーにデプロイします。npmローカルコマンドを実行するためにnpm serveコマンドを実行しますが、Tomcatサーバーを使用してそのアプリケーションにアクセスする必要があります。 。
何か提案してください。
ありがとう
npm run buildはビルドプロセスをトリガーできますが、ベースURLに相対パスがないと想定してコードを生成しますが、相対パスにデプロイしたい場合サーバーのパス??つまり、相対パスとは、Tomcat webappsディレクトリ内にsimpleappフォルダがあり、それから自分の反応アプリにアクセスしたいということです http:// localhost/simpleapp 。反応ルータを使用すると、さらに複雑になります。
私は空白のページを取得していましたが、後で 一部の変更が見つかりました リアクションルーターとpackage.jsonで行われ、問題が解決しました。
だから私が見つけた解決策は:-
Package.jsonのホームページプロパティに言及
"ホームページ": " https:// localhost:8080/simpleapp "、
反応ルーターの場合、basenameプロパティを追加する必要があります。
上記の場合、アプリをsimpleapp相対パスにデプロイします
<Router basename={'/simpleapp'}>
<Route path='/' component={Home} />
{/* … */}
</Router>
反応コードのルートフォルダーでこのコマンドを実行します。
npm run build
これにより、「ビルド」と呼ばれるフォルダーに最適化されたプロダクションビルドが生成されます。次に、これらのファイルをコピーして、Tomcat WebContentフォルダーに貼り付けます。
これに link があり、これに光を当てることができます。
最初に、Gruntまたはwebpackを使用してプロジェクトをビルドする方法を決定する必要があります。ビルドプロセスをトリガーできるnpm run build
などのスクリプトをパッケージjsonに追加することもできます。ビルドされたプロジェクトは、ビルドされたファイルを配置し、index.htmlにスクリプトを含めるだけで、任意のWebサーバーで使用できます。