Jo *_*gue 0 reactjs react-router react-scripts create-react-app surge.sh
我的情况:
我正在托管使用create-react-app
Surge 创建的应用。为了让Surge react-router
处理路由,我必须在根目录中添加200.html,并且要处理404,必须在根目录中添加404.html。问题在于,npm run build
仅使用index.html
和将favicon.ico
它们添加到构建目录的根目录中。
可能的解决方案:
我可以通过build
在package.json中创建脚本来复制其他文件react-scripts build && cp 200.html 404.html build
。
题:
有没有更好的方法来react-scripts
将额外的文件添加到构建的根目录,而不是依靠package.json中的bash脚本?
我确定的答案是,如我最初怀疑的那样,在package.json中使用bash脚本,但是我决定在部署脚本中而不是构建脚本中执行文件操作,并将index.html重命名为200.html而不是复制额外的文件,如create-react-app docs所建议;
"build": "react-scripts build",
"deploy": "npm run build && mv build/index.html build/200.html && surge build mydomain.com"
Run Code Online (Sandbox Code Playgroud)
我认为在部署脚本中而不是在构建脚本中进行文件操作是正确的解决方案,因为该更改对于部署环境是唯一的,这意味着,如果我要部署的不是浪涌,则可能不想重命名索引文件。
如果有人有更好的建议,仍然可以接受其他解决方案。
归档时间: |
|
查看次数: |
1820 次 |
最近记录: |