Я хотел сделать список, используя v-for.Это достаточно просто, документация объясняет почти каждый случай использования.Я хочу, чтобы это выглядело так:
<template v-for="(item, index) in items" :key="index">
<CustomComponent :item="item"/>
<Separator v-if="index !== items.length-1"/>
</template>
К сожалению, в документации не сказано, как установить ключ для нескольких пользовательских компонентов в одном v-for.
Очевидно, я неЯ не хочу включать разделитель в мой пользовательский компонент, потому что он используется и в других местах.Код, который я вставил, генерирует эти ошибки: 'template' cannot be keyed. Place the key on real elements instead.
Я могу установить ключ для компонента и разделителя, используя индекс, но у меня есть ошибки: Duplicate keys detected: 'x'. This may cause an update error.
Пока я делаю это так, но этоужасный хак и не будет работать с большим количеством компонентов в одном шаблоне.
<template v-for="(item, index) in items">
<CustomComponent :item="item" :key="(index+1)*-1"/>
<Separator v-if="index !== items.length-1" :key="(index+1)"/>
</template>
Пример из документации объясняет шаблоны в списке с основными компонентами, которые не требуют ключей.Кто-нибудь знает, как мне правильно это сделать?
Ps.Не рекомендуется использовать v-if на v-for.Может кто-нибудь предложить, как изменить мой код, чтобы не использовать v-if, но не отображать разделитель в последнем элементе?