Answer the question
In order to leave comments, you need to log in
How to track such v-model in watch: v-model="props.item.dsec_declarant_kind"?
VueTIFY template:
<v-data-table
:headers="dsec_headers"
:items="dsec"
>
<template v-slot:items="props">
<tr :id="'row'+props.item.dsec_nnn" @click="mainTableRowClick(props.item.dsec_nnn)">
<td>
<div>{{ props.item.dsp_inf }}</div>
</td>
<td>
<div>{{ props.item.dsec_nnn }}</div>
</td>
<td>
<v-select
v-model="props.item.dsec_declarant_kind"
:items="ddk"
item-text="ddk_name"
item-value="ddk_code"
solo
flat
hide-details
single-line
menu-props="auto"
></v-select>
</td>
</tr>
</template>
</v-data-table>
Answer the question
In order to leave comments, you need to log in
It is possible to make a computed property out of these dsec_declarant_kind:
computed: {
declarantKind() {
/*
* я так понимаю, dsec_nnn - штука уникальная, раз вы её используете при назначении id,
* так что используем её для связи отслеживаемых значений с элементами исходного массива
*/
return this.dsec.map(n => [ n.dsec_nnn, n.dsec_declarant_kind ]);
},
},
watch: {
declarantKind(newVal, oldVal) {
const
// найдём идентификатор изменившегося значения
nnn = oldVal.find((n, i) => n[1] !== newVal[i][1])[0],
// и сам элемент, в котором произошли изменения
item = this.dsec.find(n => n.dsec_nnn === nnn);
},
},
Didn't find what you were looking for?
Ask your questionAsk a Question
731 491 924 answers to any question