ON
Size: a a a
ON
AP
on:* в том, что ты не знаешь, к чему родитель подсоединится. Одно дело, когда у тебя есть очевидный dispatch('click'), другое — когда у тебя на все on:* будет навешиваться листенер от родителя, ну и ты там уже в родителе проводи тысячу проверок, чтобы убедиться, что у тебя пришло нормальное событие, а не мусор какой-то.DK
on:* в ребёнке.DK
CustomEvent<void> | Event<any>? Если у тебя любая подписка может улететь в любой элемент, который может зафайрить его, а может и нет — это же дичара какая-то.ON
on:* в ребёнке.AP
CustomEvent<void> | Event<any>? Если у тебя любая подписка может улететь в любой элемент, который может зафайрить его, а может и нет — это же дичара какая-то.DK
Child.svelte
<script>
export let ref;
</script>
<button bind:this='ref'>click</button>
Parent.svelte
<script>
let ref: HTMLButtonElement | undefined;
const events = ['click', 'longpressCustom'], cb = (e: Event) => console.log(e)
$: if(ref) events.forEach(ev => ref.addEventListener(ev, cb))
</script>
<Child bind:ref />
DK
onClick: (e: EventHandler<MouseEvent, HTMLButtonElement>) => void, ну и его ни на что, кроме кнопки не навесишь, никакой ивент, кроме клика и прочих не передашь. С on:* у тебя реальная сигнатура — Event<HTMLElement> | CustomEvent. И как ты ни напишешь ребёнка, лучше не получится.DK
AP
onClick: (e: EventHandler<MouseEvent, HTMLButtonElement>) => void, ну и его ни на что, кроме кнопки не навесишь, никакой ивент, кроме клика и прочих не передашь. С on:* у тебя реальная сигнатура — Event<HTMLElement> | CustomEvent. И как ты ни напишешь ребёнка, лучше не получится.ON
<input on:* />, react: <input {...$props} />, что там что там просто присвоение переданых евентовDK
AP
onClick: (e: EventHandler<MouseEvent, HTMLButtonElement>) => void, ну и его ни на что, кроме кнопки не навесишь, никакой ивент, кроме клика и прочих не передашь. С on:* у тебя реальная сигнатура — Event<HTMLElement> | CustomEvent. И как ты ни напишешь ребёнка, лучше не получится.DK
AP
DK
AP
AP
DK
AP