Вы можете использовать addRoutes следующим образом:
import router from '@/router'
import Project from './pages/Project'
import Projects from './pages/Projects'
router.addRoutes([{
path: '/projects',
name: 'projects.projects',
component: Projects,
props: false
}, {
path: '/projects/:id',
name: 'projects.project',
component: Project,
props: true
}])
Из документов:
Динамически добавлять дополнительные маршруты к маршрутизатору. Аргумент должен быть массивом, использующим тот же формат конфигурации маршрута с опцией конструктора маршрутов
Полный пример:
У вас есть основной маршрутизатор, как это:
import Vue from 'vue';
import VueRouter from 'vue-router';
import Home from '../components/pages/Home';
Vue.use(VueRouter);
const router = new VueRouter({
mode: 'history',
routes: [
{
path: '/home',
name: 'home',
component: Home,
},
],
});
export default router;
Теперь вы создаете новую страницу со следующей структурой.
-- NewPage
-- NewPage.vue
-- route.js
route.js
должно выглядеть так:
import router from '@/router' //importing the main router
import NewPage from './NewPage.vue'
router.addRoutes([
{
path: '/new-page',
name: 'newPage',
component: NewPage,
},
])
Надеюсь, я вам помог.