path: users,
component: {template: <router-view></router-view>},
meta: {title: 'Пользователи'},
children: [
{
// list page
path: '',
name: users,
component: List,
},
{
// create page
path: 'create',
component: Edit,
name: 'userCreate',
meta: {title: 'Создание'}
},
если делать ссылку из меню то <router-link :to="{ name: 'users' }"> возвращает нам users/ - все ок. слеш в конце, это важно.
далее внутри List мы можем например спокойно делать
this.$router.push({path: 'create'}); и он нас переключит уже на редактирование. тоже все хорошо.
но если строить breadcrumbs на странице users/create, то мы берем this.$route.matched, там ищем все роуты с title и для страницы списка это будет root (см комент в коде).
и если по нему запросить ссылку <router-link :to="route"> то получаем уже users без слеша в конце. если по ней перейти - то как бы список мы увидим, но
this.$router.push({path: 'create'}); уже работать не будет.
как быть?
—-
meta: {title: 'Пользователи'}, можно перенести из root в list page и тогда вроде все работает.
но тогда хлебные на странице create page не найдут в this.$route.matched элемента с title для списка и соответсвенно пропустят его. а как-бы логично что он нужен.
чет сложно. В чем проблема выделить хлебные крохи в компонент который принимает массив
Обсуждают сегодня