#30 v-model и семантика - Vue.js: нюансы
ฝัง
- เผยแพร่เมื่อ 8 ก.ย. 2024
- Остались вопросы? Присоединяйтесь к нам в t.me/vuejs_club
Документация по пользовательским событиям в компонентах:
Vue2: ru.vuejs.org/v...
Vue3: v3.ru.vuejs.or...
---
Видео создано благодаря подписчикам проекта на нашем Patreon.
Хотите получать контент на 3 месяца раньше остальных? Присоединяйтесь! / javascriptninja
Как же я долго этого ждал
Это именно та серия обучающих роликов, которые я смотрю и кайфую. Так все хорошо объясняется
На днях решил пересмотреть весь курс, вчера ночью закончил смотреть #29 видео. Кто бы мог подумать, что на следующий день появится #30!)
Когда включал видео, думал, что и так всё это знаю, но был приятно удивлён. Спасибо)
Подарок на День знаний!)
Как я ждал продолжения
Оно живо!
Ого, такими темпами можно и продолжения курса по Node дождаться!
Спасибо за труд! Было полезно!
Спасибо, отличное видео!
Muuito legal o material!
lhe desejo toda sorte com o teu canal!
а что с базовым курсом по js?
Спасибо!
он всё-таки существует! 🥳🎉
Лайк не глядя!
УРАААААА
наконец-то божеее
Оу май…
Если передаваемый props элемент массива и внутри дочернего компонента есть кнопка удалить. Лучше применять этот способ плюс дополнительный event для удаления или лучше все делать по старинке?
Полагаю, ты имел ввиду не "элемент массива", а "массив": items: {type: Array}?
Ты не должен никак менять сам items или любой и item внутри него.
Если делаешь двухстороннее связывание, то event'е "update:modelValue" должен вернуть копию массива:
const items2 = props.items.filter(...);
emit('update:modelValue', items2);
Второй вариант: передай наверх событие удаления элемента по индексу(или по id), пусть родительский компонент с этим разбирается
emit('delete', 22);
@@alekseym1058 имел ввиду именно элемент массива)
@@muhamadaminibragimov5096 Значит, если ты передаёшь в дочерний компонент элемент массива, то для дочернего элемента это НЕ элемент массива, для него это просто объект (или строка или... из чего там массив состоит). Если в дочернем компоненте есть кнопка удаления, то сообщать наверх надо отдельным событием emit("delete'). Это логично, это однозначно читаемо.
@@alekseym1058 Да вопрос в том будет ли читаемо в таких случаях делать v-model + emit('delete') или все делать через emit)
@@muhamadaminibragimov5096 У них же разное предназначение. v-model - для изменений, emit(delete) - для удаления. Вообще, если постараться, то всё можно засунуть в v-model, а можно всё в emits, но зачем? Не смешивай. То, что есть v-model+emit(чего-то_там_ещё) - это нормально и правильно.
другие люди - это вы сами через неопределенный промежуток времени