构建后index.html中的相对路径

问题描述 投票:4回答:3

您好我有一个reactjs应用程序,我用bellow命令构建我的项目

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">
reactjs npm build path react-scripts
3个回答
21
投票
{
  "name": "your-project-name",
  "version": "0.1.0",
  "homepage": "./",
  .
  . 
  .
  #your rest of package.json content
}

在此之后运行npm run buid

这会将路径更改为“./”


5
投票

我遇到了类似的问题,并通过在package.json中设置"homepage": "./"来解决它

我在这里找到了这个解决方案https://github.com/facebook/create-react-app/issues/165


1
投票

如果你正在使用webpack,你可以尝试将publicPath设置为./

你可以阅读更多关于它here

© www.soinside.com 2019 - 2024. All rights reserved.