关于使用 vue 路由的 history 模式。
在打包后的文件里有一个 index.html. 我想通过 node 启动一个服务器,去模拟真实服务器的状态。 看了 vue 的官方文档,提示我用一个第三方的 connect-history-api-fallback 去 redict 地址。。。
但是我配置过后死活不行,页面通过点击进入其他的路由是可以的,一刷新就没了,报 404.
这是我 nodejs 的配置,直接放在 index.html 文件夹内部的
const express = require('express') const webpack = require('webpack')
const app = express()
var history = require('connect-history-api-fallback'); // // handle fallback for HTML5 history API ///启动的时候使用了 node 服务器.....所以不会出问题了。。。
var middleware = history({
rewrites: [ { from: /^/.*$/, to: function(context) { return '/'; } } ], verbose: true, disableDotRule: true, htmlAcceptHeaders: ['text/html', 'application/xhtml+xml'] })
app.use(express.static(__dirname)) app.use(middleware)
const port = process.env.PORT || 8089
module.exports = app.listen(port, () => {
console.log(Server listening on http://localhost:${port}, Ctrl+C to stop
)
})
////刷新的时候没有了。。。
这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。
V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。
V2EX is a community of developers, designers and creative people.