web-dev-qa-db-ja.com

ビルド後のindex.htmlの相対パス

こんにちは、reactjsアプリがあります。次のコマンドを使用してプロジェクトをビルドします

npm build

これが私のpackage.jsonファイル:

  "scripts": {
    "start": "react-scripts start",
    "build": "react-scripts build",
    "test": "react-scripts test --env=jsdom",
    "eject": "react-scripts eject"},

ビルド後、ビルドファイルとindex.htmlファイルを含むフォルダーがありますが、この.htmlのすべてのパスは絶対パスなので、相対パスでビルドしたい

たとえば(index.html):今私は持っています:

<script type="text/javascript" src="/static/js/main.af2bdfd5.js"></script>
<link href="/static/css/main.097da2df.css" rel="stylesheet">
<link rel="shortcut icon" href="/favicon.ico">

これ欲しい:

<script type="text/javascript" src="./static/js/main.af2bdfd5.js"></script>
<link href="./static/css/main.097da2df.css" rel="stylesheet">
<link rel="shortcut icon" href="./favicon.ico">
32
user3045654
{
  "name": "your-project-name",
  "version": "0.1.0",
  "homepage": "./",
  .
  . 
  .
  #your rest of package.json content
}

この実行後npm run buid

これにより、パスが「./」に変更されます

13
Gampesh

同様の問題が発生し、package.jsonに"homepage": "./"を設定して解決しました

私はこの解決策をここに見つけました https://github.com/facebook/create-react-app/issues/165

4
Ganesan

Webpackを使用している場合は、publicPath./に設定してみてください

あなたはそれについてもっと読むことができます ここ

0
Mr. 14