我正在我的应用程序中使用Vue路由器。当用户访问''
时,应该加载HomeComponent
,它会加载!但是,当我转到/login
时,LoginComponent
不会加载,应用程序会将我重定向到404页。请帮忙。routes.js
import HomeComponent from './components/Home.vue';
import LoginComponent from './components/auth/LoginComponent.vue';
export const routes = [
{path: '', component: HomeComponent},
{path: '/login', component: LoginComponent},
];
app.js
const router = new VueRouter({
mode: 'history',
routes
});
routes/web.php
Route::get('/', function () {
return view('layouts.master');
});
这是这些路线装载的地方。
MasterComponent
加载,但其他组件不加载。实际上,我在我的HomeComponent
里写mode: 'history'
的时候就发生了!在我把模式改成历史之前,一切都很顺利。 最佳答案
刚刚找到解决办法:
Route::get('/{vue_capture?}', function () {
return view('layouts.master');
})->where('vue_capture', '[\/\w\.-]*');
这有助于laravel捕获vue生成的url!就这样!