我目前正在构建一个Laravel应用程序,其中两个仪表板用于管理员,第二个用于用户.用户后端应该在域/user-dashboard/
下运行./dashboard
下的后台管理员.
在Vue中,我使用Vue路径,并且我的base url有问题.因为Vue路由不会将Vue routes链接添加到我的base url.它总是以"/"开头.我怎么才能修好它呢?
这是我的web.php个、router.js和vite.config.js个
web.php个
Route::get('/user-dashboard', function () {
return view('userdashboard');
})->middleware(['auth', 'verified'])->name('user.dashboard');
Route::get('/dashboard', function () {
return view('dashboard');
})->middleware(['auth', 'verified'])->name('dashboard');
routes/index.js个
import { createWebHistory, createRouter } from "vue-router";
import Home from "../views/HomeView.vue";
import Profile from '../views/ProfileView.vue';
import NotFound from '../views/NotFoundView.vue';
const routes = [
{
path: "/",
name: "Home",
component: Home,
},
{
path: "/profile",
name: "Profile",
component: Profile,
},
{
path: "/:catchAll(.*)",
component: NotFound,
},
];
const router = createRouter({
history: createWebHistory(),
base: '/user-dashboard/',
routes,
});
export default router;
vite.config.js个
import { defineConfig } from 'vite';
import laravel from 'laravel-vite-plugin';
import vue from "@vitejs/plugin-vue"
export default defineConfig({
plugins: [
laravel({
input: [
'resources/css/app.css',
'resources/js/app.js',
],
refresh: true,
}),
vue({
template: {
transformAssetUrls: {
base: null,
includeAbsolute: false,
},
},
}),
],
});