Как достичь n уровней вложенных динамических маршрутов в Vue.js? - PullRequest
0 голосов
/ 03 апреля 2019

Я хочу достичь n уровней динамических вложенных маршрутов в Vue.js, где n мне неизвестно. например -

abc.com/ctx-path/component/1/2/...../n

где 1,2, ... n - уровни

Как мне добиться этого с помощью Vue-router?

Ответы [ 2 ]

1 голос
/ 03 апреля 2019

За кулисами сопоставления путей vue-router используется path-to-regexp . Так что должно быть возможно написать что-то вроде этого

{ path: '/ctx-path/component/:id+', component: Component }

или

{ path: '/ctx-path/component/:id*', component: Component }

Вы также можете добавить путь динамически в во время выполнения , но для его добавления потребуется триггер.

Последний вариант - перехватить весь маршрут и добавить собственную логику.

0 голосов
/ 03 апреля 2019

Это из документов:

const router = new VueRouter({
    routes: [
        { path: '/user/:id', component: User,
            children: [
                {
                // UserProfile will be rendered inside User's <router-view>
                // when /user/:id/profile is matched
                path: 'profile',
                component: UserProfile
                },
                {
                // UserPosts will be rendered inside User's <router-view>
                // when /user/:id/posts is matched
                path: 'posts',
                component: UserPosts
                }
            ]
       }
   ]
})

см. Ссылку https://router.vuejs.org/guide/essentials/nested-routes.html

...