Tim*_*Tim 5 javascript reactjs react-router
我是 Web 开发的新手,最近开始将我的简单 Web 应用程序推送到 GitHub 页面。我很快发现我的页面在集成后不会呈现,react-router因为我的开发和产品 URL 链接不同。
我的问题是,如何设置我的package.json和.env以便它能够正确呈现我的 URL?
我的.env文件如下所示:
REACT_APP_PUBLIC_URL="my-site"
Run Code Online (Sandbox Code Playgroud)
我的package.json样子:
"scripts": {
"start": "NODE_ENV=development react-scripts start",
"start:prod": "NODE_ENV=production react-scripts start",
"build": "react-scripts build",
"test": "react-scripts test --env=jsdom",
"eject": "react-scripts eject",
"predeploy": "npm run build",
"deploy": "gh-pages -d build"
}
Run Code Online (Sandbox Code Playgroud)
在我的内部Index.js,我正在这样做:
if (process.env.NODE_ENV === "production") {
require("dotenv").load();
}
console.log("PROCESS.ENV.NODE_ENV: ", process.env.NODE_ENV); // This prints "development"
console.log("PROCESS.ENV.PUBLIC_URL: ", process.env.REACT_APP_PUBLIC_URL); // This prints "my-site"
Run Code Online (Sandbox Code Playgroud)
当我运行时npm run start:prod,我会认为它将设置为NODE_ENV,production但它似乎并没有这样做。
基本上,我想做的是在开发期间,我process.env.PUBLIC_URL应该是"",在生产期间,它应该是"my-site"。这样,我的路由器就可以正确渲染相应的视图。感谢您的帮助!
| 归档时间: |
|
| 查看次数: |
5236 次 |
| 最近记录: |