Чем emit / defineEmits отличается от callback prop и когда что выбрать во Vue.js?
Что хотят услышать интервьюеры:
Сравнение: emit / defineEmits нельзя оценивать в вакууме; обычно его сравнивают с callback prop. Выбор зависит от размера компонента, источника состояния, lifecycle, требований к SSR, тестируемости и командных соглашений.
Ответ:
Когда выбирать emit / defineEmits: когда его свойства напрямую решают задачу.
Плохой ответ: «так принято» без объяснения trade-off.
const emit = defineEmits<{ save: [id: string] }>() emit('save', id)