部署快速路由并使用路由前缀进行响应
我正在尝试使用express服务一个React应用(使用路由器)。可以通过/dashboard
访问react应用。
在应该显示登录页面的/dashboard
路由上,一切正常。但是,如果我尝试访问其他路由,则示例/dashboard/foo
它什么也不显示。事实证明,当HTML页面请求.js
文件时,服务器将返回index.html
文件而不是.js
文件。
我正在index.js
文件中使用此代码:
app.use( ['/dashboard', '/dashboard/*'], express.static(path.join(__dirname, 'dashboard')), );
也尝试过此代码:
app.use(
'/dashboard',
express.static(path.join(__dirname, 'dashboard')),
);
app.get(
'/dashboard/*',
(req, res) => {
res.sendFile(__dirname + "/dashboard/index.html"));
}
);
我正在尝试使用express服务一个React应用(使用路由器)。可以通过/ dashboard访问react应用。 / dashboard路线上的所有操作都正常,应该显示...
回答如下:他,路由器定义顺序很合理,这是示例Order of router precedence in express.js和文档https://expressjs/en/guide/routing.html