【发布时间】:2018-06-16 09:34:33
【问题描述】:
(注意:这里的代码完全擦洗,所以如果我说的很傻,请理解。)
我使用典型的webpack 模板启动了一个 Vue.js 项目,用于制作单页应用程序。 (我没有从这里修改文档结构。)上面没有其他框架。
为了摆脱 URL 中的哈希,文档谈到了打开 history mode。但是,在指定之后,您必须配置服务器。引用;
[...] 为您的服务器添加一个简单的包罗万象的后备路由。如果 URL 不匹配任何静态资源,它应该提供与您的应用相同的 index.html 页面。
由于我使用的是 Node.js + Vue.js,顶部没有添加任何其他内容,因此这应该是服务器配置的相应示例。
const http = require('http')
const fs = require('fs')
const httpPort = 80
http.createServer((req, res) => {
fs.readFile('index.htm', 'utf-8', (err, content) => {
if (err) {
console.log('We cannot open "index.htm" file.')
}
res.writeHead(200, {
'Content-Type': 'text/html; charset=utf-8'
})
res.end(content)
})
}).listen(httpPort, () => {
console.log('Server listening on: http://localhost:%s', httpPort)
})
但是,我终其一生都无法弄清楚这应该去哪里,因为它没有具体说明。这会进入 main.js 吗?路由器的 index.js?或者它是构建文件夹或配置中的其中一个东西的一部分? (如果我在 heroku 上运行生产版本,会有什么不同吗?)
【问题讨论】:
标签: node.js vue.js vue-router