[英]Load vue routes in a component instead of app.js
I'm using Laravel and currently, I'm loading my Vue routes in apps.js
like this:我正在使用Laravel ,目前,我正在
apps.js
中加载我的Vue路由,如下所示:
import MyComponentMain from './components/MyComponentMain.vue';
import MyComponentOne from './components/MyComponentOne.vue';
import MyComponentTwo from './components/MyComponentTwo.vue';
const routes = [
{
path: '/my-component-main',
component: MyComponentMain
},
{
path: '/my-component-one',
component: MyComponentOne
},
{
path: '/my-component-two',
component: MyComponentTwo
},
];
const router = new VueRouter({
routes
});
const app = new Vue({
el: '#app',
router: router
});
How can I move the declarations of MyComponentOne
and MyComponentTwo
routes to MyComponentMain.vue
?如何将
MyComponentOne
和MyComponentTwo
路由的声明移动到MyComponentMain.vue
?
./components/MyComponentMain.vue
: ./components/MyComponentMain.vue
:
<template>
<div class="container">
<router-link
class="nav-link"
to="/my-component-one"
>
<router-link
class="nav-link"
to="/my-component-two"
>
</div>
</template>
<script>
mounted () {
console.log('Main component mounted.');
}
</script>
Based on your comment, you can split the routes by creating a routes folder and organise your routes by file and merge in app.js
, similar to how you would do vue store modules.根据您的评论,您可以通过创建路由文件夹来拆分路由并按文件组织路由并在
app.js
中合并,类似于您执行 vue 存储模块的方式。
/routes/MyComponentMain.vue /routes/MyComponentMain.vue
import MyComponentMain from './components/MyComponentMain.vue';
const componetMainRoutes = [
{
path: '/my-component-main',
component: MyComponentMain
},
];
export componetMainRoutes
/routes/MyComponentOne.vue /routes/MyComponentOne.vue
import MyComponentOne from './components/MyComponentOne.vue';
const componetOneRoutes = [
{
path: '/my-component-one',
component: MyComponentOne
},
];
export componetOneRoutes
/routes/MyComponentTwo.vue /routes/MyComponentTwo.vue
import MyComponentTwo from './components/MyComponentTwo.vue';
const componnetTwoRoutes = [
{
path: '/my-component-two',
component: MyComponentTwo
},
];
export componnetTwoRoutes
and then bring them all together in app.js
然后将它们全部放在
app.js
中
import componetMainRoutes from "./routes/componetMainRoutes"
import componetOneRoutes from "./routes/MyComponentOne"
import componnetTwoRoutes from "./routes/componnetTwoRoutes"
const routes = [
...componetMainRoutes,
...componetOneRoutes,
...componnetTwoRoutes
];
const router = new VueRouter({
routes
});
const app = new Vue({
el: '#app',
router: router
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.