Есть кусок шаблона:
<div class="element" v-for="(element, index) in formElements" :key="index">
<div class="element-content">
<div class="number">
{{ element.priority = index + 1 }}.
</div>
<select v-model="element.selected" required>
<option value="" disabled hidden selected>
Choose a option
</option>
<option v-for="(label, optionIndex) in formData" :key="optionIndex" :value="label.name" :disabled="matchSelected(label.name)">
{{ label.title }}
</option>
</select>
<button type="button" class="button button--sort" @click="element.sort = changeSort(element.sort)">
<img :src="element.sort === 'ASC' ? getImgUrl('sort-ASC.svg') : getImgUrl('sort-DESC.svg')" alt="">
</button>
</div>
<button type="button" class="button button--delete" @click="deleteLabel(index)">
<img src="../assets/clear.svg" alt="">
</button>
</div>
Мне нужно привязатьelement.priority
и index
, что я и делаю в интерполяции, но думаю, что это bad practice.
Как лучше в таком случае сделать реактивную привязку?
computed: {
computedFormElements() {
return this.formElements.map( (_, index) => ({
..._,
priority: index + 1,
}))
}
}
И уже в цикле использовать измененный массив, в нем priority будет в нужном виде.
<div class="element" v-for="(element, index) in computedFormElements" :key="index">
Виртуальный выделенный сервер (VDS) становится отличным выбором
Есть страница в которой просто написано в виде json, мне нужно как-то получать каждое из этих чтобы я мог с этим работатькак это реализовать?