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

IT技术 reactjs build path create-react-app react-scripts
2021-04-19 23:22:04

您好,我有一个 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">
3个回答
// package.json
{
  "name": "your-project-name",
  "version": "0.1.0",
  "homepage": "./", # <--- Add this line ----
  ...
}

再跑npm run build

这会将路径更改为./,这是项目的相对路径。

文档已更新以建议使用"."而不是"./". 看到这个 Github 问题
2021-05-26 23:22:04
官方文档也涵盖了这个主题
2021-06-10 23:22:04

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

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

似乎此修复程序特定于由 create-react-app 创建的项目?
2021-06-14 23:22:04

如果您使用的是 webpack,您可以尝试设置publicPath./

您可以在此处阅读更多相关信息

其它你可能感兴趣的问题