我从webpack template引导了我的应用程序,并将路由/edit/:filename
添加到其中。
问题是,包含点的文件名由Express处理,而不是由我的Vue应用程序处理。
换句话说,/edit/123
与路线匹配,但/edit/123.json
或/edit/123.txt
不匹配,我从Express获得404。
如何在路线中匹配任何内容或至少/edit/anyfilename.json
?
答案 0 :(得分:2)
我在Vue论坛上从doing this instead获得answer。 Vue Linus Borg使用index.html
将所有HTTP请求重定向到disableDotRule
。除非true
设置为app.use(require('connect-history-api-fallback')({
disableDotRule: true,
rewrites: [
{from: /\/app.js/, to: '/app.js'}
]
}))
,否则它会跳过路径中带点的HTTP请求。正确的配置是
/app.js
请注意,我们必须向index.html
添加额外的重写,以便不会重定向到v x y z
.
.
.
vn x y z
.
.
.
。