【发布时间】:2018-06-15 20:24:33
【问题描述】:
更新:
原来是Windows上的Vue webpack模板的一个bug,很快就会修复
问题:
我通过使用vue init webpack projectName 安装它开始了一个新的 Vue 项目,现在我在刷新页面时不断收到:Cannot GET /path(在本地主机上)。
例如,如果我转到/contact,我会看到页面的内容,但只要我点击刷新,我就会看到Cannot GET /contact
不仅如此,你现在不能简单地在地址栏中手动输入路线,你会得到同样的错误。
- 我有
mode: 'history' - 我在 localhost (
npm run dev) 上看到了这个
几天前它确实工作正常。我如何让它现在工作?
网上所有的答案都没有用(也许我没有正确应用它们)
index.js
import Vue from 'vue'
import Router from 'vue-router'
import Vuetify from 'vuetify'
import 'vuetify/dist/vuetify.min.css'
import Home from '@/components/Home'
import Contact from '@/components/Contact'
Vue.use(Router)
Vue.use(Vuetify)
export default new Router({
mode: 'history',
routes: [
{
path: '/',
name: 'Home',
component: Home
},
{
path: '/contact',
name: 'Contact',
component: Contact
}
]
})
因此,我现在也无法进行此重定向:
{
path: '*',
redirect: '/'
}
我得到同样的错误。
所以我认为这可能是 Vue Webpack 的模板错误,我注意到 webpack.dev.conf.js 现在有点不同,现在有这样的行:
devServer: {
clientLogLevel: 'warning',
historyApiFallback: {
rewrites: [
{ from: /.*/, to: path.join(config.dev.assetsPublicPath, 'index.html') },
],
},
[...]
我认为这与它有关。
【问题讨论】:
-
因为您没有将所有匹配路由转发到客户端来处理路由的服务器。
-
@Ohgodwhy 抱歉,我忘了提到我在 localhost 上看到了这个,所以问题出在 webpack 的开发服务器上。我不知道如何让它像以前一样工作
标签: webpack vue.js vuejs2 webpack-dev-server vue-router