您好我有一个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">
{
"name": "your-project-name",
"version": "0.1.0",
"homepage": "./",
.
.
.
#your rest of package.json content
}
在此之后运行npm run buid
这会将路径更改为“./”
我遇到了类似的问题,并通过在package.json中设置"homepage": "./"
来解决它
我在这里找到了这个解决方案https://github.com/facebook/create-react-app/issues/165
如果你正在使用webpack,你可以尝试将publicPath
设置为./
你可以阅读更多关于它here。