Vue路由不起作用.Laravel 8+Vue



我不知道我的代码出了什么问题,或者它在laravel 8上出现了问题?

路由器JS文件

import Vue from 'vue'
import VueRouter from 'vue-router'
import FirstPage from './components/pages/FirstPage.vue'
Vue.use(VueRouter)
const routes = [
{ path: '/new-route', component: FirstPage }
]
export default new VueRouter({
mode: 'history',
routes
})

应用JS文件

require('./bootstrap');
window.Vue = require('vue')
import router from './router'
Vue.component('mainapp', require('./components/mainapp.vue').default)
const app = new Vue ({
el: '#app',
router
})

web PHP文件

<?php
use IlluminateSupportFacadesRoute;
use AppHttpControllersTestController;

Route::get('/', function () {
return view('welcome');
});
Route::get('test', [TestController::class, 'test']);
Route::any('{slug}', function(){
return view ('error');
});

有人有主意吗?或任何建议。(需要公布更多详细信息(

您需要在web.php中使用它

Route::any('{all}', [TestController::class, 'test'])
->where('all', '^(?!api).*$')
->where('all', '^(?!storage).*$');

Route::any('{all}',function(){
return view('main'); // it should be main blade file 
})
->where('all', '^(?!api).*$')
->where('all', '^(?!storage).*$');

在没有#的情况下工作vue路由器

这段代码排除了apistorageurl,所以两者都可以工作,其他所有路由都可以捕获,所以vuejs可以实现其神奇的

最新更新