使用网址参数时,例如books/1
,由于某种原因,快递应用无法找到并提供Index.js
。
我正在使用绝对路径,但即使我的快递应用程序在使用params在网址刷新时仍无法找到Index.js
。
正如您在屏幕截图中看到的那样,而不是提供Index.js
,它无法找到它,而是将{html文件作为Index.js
提供。
我正在做catch-all solution,它在网址参数刷新之前效果很好:
app.use(express.static(path.resolve(__dirname, '..', 'build')));
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'index.html'));
});
我甚至试图为/Index.js
设置一条特定路线,但没有运气。
app.use(express.static(path.resolve(__dirname, '..', 'build')));
app.get('/Index.js', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'Index.js'))
});
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'index.html'));
});
我还尝试使用serve-static代替express.static
,但没有帮助。
如果有人有兴趣看一下,我已经在repo重复了这个问题。
此项目的前端位于reason-react。
答案 0 :(得分:0)
这可能过于简单,但您尝试过:import { fromEvent } from 'rxjs/observable/fromEvent';
答案 1 :(得分:0)
在mountpath“book / Index.js”上提供Index.js解决了这个问题。
像这样:
app.use(express.static(path.resolve(__dirname, '..', 'build')));
app.get('/book/Index.js', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'Index.js'));
});
app.get('/*', (req, res) => {
res.sendFile(path.join(__dirname, '..', 'build', 'index.html'));
});