这是我要完成的工作:
- / api / *由Express.js处理
- React Router Dom处理的其他任何事情
我已经使用create-react-app创建了我的应用程序并弹出。由于某些原因,我的快递服务器无法正常工作:
const express = require("express");
const path = require("path");
const port = 3000;
const app = express();
app.get("*", (req, res) => {
res.status(200).sendFile(path.resolve(path.join(__dirname, "../build/index.html")));
});
当我执行yarn build
(执行node scripts/build.js
默认情况下与create-react-app一起执行)时,它将构建我的应用程序,然后启动快速服务器并导航到它,它只是显示为空白控制台输出的页面:
资源被解释为样式表,但是以MIME类型text / html传输:“ http://localhost:3000/static/css/main.766345d1.css”。
main.936d1f48.js:1未捕获的语法错误:意外的令牌<< / p>
当我在homepage
中未设置我的package.json
属性时,就会发生这种情况。
当我将其设置为./
时,会发生以下情况:
资源解释为样式表,但以MIME类型传输 text / html:“ http://localhost:3000/static/css/main.766345d1.css”。
manifest.json:1清单:行:1,列:1,意外令牌。
main.5e4ef579.js:1未捕获的语法错误:意外的令牌<< / p>
显然,任何呼叫都被重定向以返回index.html
。我该怎么办?
Pst。我是react-router的初学者,尤其是express.js。
另外,请注意,我是通过构建然后运行快递服务器来运行应用程序的,即使我不确定那是否应该如此。