Я новичок в Vue. js и столкнулся с этой проблемой.
У меня есть этот простой кусок кода в приложении. vue
<div v-for="brand in response" v-bind:key="brand.BrandId">
<router-link v-bind:to="{name: 'brand', params: {brandId: brand.BrandId } }">
{{brand.Name}}
</router-link>
</div>
<router-view />
Маршрутизатор / index. js Элемент массива маршрутов выглядит так:
{
path: '/brand/:brandId',
name: 'brand',
component: () => import('../views/BrandDetail.vue')
}
Я получил ответ от API. Это допустимый массив объектов. Меню отображается нормально.
Я ожидаю, что представление маршрутизатора обновится при нажатии ссылки маршрутизатора. Он обновляет URL-адрес (# / brand / id), но представление маршрутизатора не обновляется.
Существуют другие ссылки на маршрутизаторы, которые жестко закодированы. Если я go возвращаюсь к любой динамически добавляемой ссылке на маршрутизатор, она работает, как и ожидалось, но если я щелкаю одну динамическую c ссылку на маршрутизатор, а затем другую, то представление маршрутизатора застревает в первой.
Я также пытался добавить реактивный источник данных к ключу, но это не помогло.
Может кто-нибудь объяснить мне, что здесь происходит?