我尝试在 Laravel 应用中使用 VueRouter 2.2.1
,出于某种原因我的网址(虽然工作)以奇怪的方式显示#符号
http://myapp.dev/admin#/
而不是
http://myapp.dev/admin/#/
正如我通常所期望的那样......
这是我的 VueRouter 配置
const Router = new VueRouter({
routes: [
{
path: '/',
component: App,
children: [
{
path: 'dashboard',
name: 'dashboard',
component: Dashboard
}
]
}
]
});
在PHP方面,我只是为应用程序的<{1}}部分定义捕获所有路由
/admin
像这样,有什么我做错了吗?它正在发挥作用,但它只是让我觉得#只是漂浮在那里。
答案 0 :(得分:0)
您必须启用历史记录模式,如here所述,我在您的vue-router配置中没有看到。
const Router = new VueRouter({
mode: 'history',
routes: [
{
path: '/',
component: App,
children: [
{
path: 'dashboard',
name: 'dashboard',
component: Dashboard
}
]
}
]
});
答案 1 :(得分:0)
您必须在服务器端执行此操作,只需将路由重定向到以'/'
与laravel一样:
Route::get('{all?}', function() {
return view('index');
})->where(['all' => '^/admin\/$'])->name('catchall');
现在只需访问/admin/#/