Почему v-модель Vue обновляет данные гораздо позже после срабатывания события click? - PullRequest
0 голосов
/ 24 марта 2020

У меня очень маленький компонент-флажок, который я пытался прослушать через событие @click. Но данные v-модели обновляются на 7 мс позже, чем обратный вызов события. Поэтому мне пришлось удалить прослушиватель @click и добавить вычисляемое свойство / метод проверяемого значения и добавить для него метод watch, чтобы $ emit обновило проверенное значение. Это прекрасно работает таким образом. Но я просто хочу понять, что происходит за кулисами. Может кто-нибудь объяснить? Или, может быть, ссылка на хороший ресурс на net?

Я также не смог найти методы v-модели в исходном коде Vue. Где я могу найти код, связанный с v-моделью, в node_modules?

1 Ответ

1 голос
/ 24 марта 2020

Попробуйте вместо этого использовать @change, а затем распечатайте его для тестирования. Например:

<input 
     type="checkbox" 
     v-model="item" 
     @change="sendEvent"
/>
sendEvent () {
     this.$emit('click', this.item);
},
...