Size: a a a

2020 November 15

MK

Maxim Kolesnikov in ☄️ effector
источник

MK

Maxim Kolesnikov in ☄️ effector
<unknown> сделать что ли?
источник

🦜

🦜 in ☄️ effector
Maxim Kolesnikov
Мне там аргумент react event не нужен, но он прокидывается же. И я не хочу, чтобы effector event знал, откуда его вызывают.

Как правильно решить?
onClick={() => event()}
источник

🦜

🦜 in ☄️ effector
🦜
onClick={() => event()}
const handler = event.prepend(noop)
onClick={handler}
источник

OR

Oleg Rizhkov in ☄️ effector
Maxim Kolesnikov
<unknown> сделать что ли?
лучше (по идее) явно указать () => event(). но можно в тупую эни в ивент передать.
источник

OR

Oleg Rizhkov in ☄️ effector
🦜
const handler = event.prepend(noop)
onClick={handler}
создаёт ивент на каждый рендер - не оч.
источник

🦜

🦜 in ☄️ effector
Oleg Rizhkov
создаёт ивент на каждый рендер - не оч.
ивент не создается
источник

OR

Oleg Rizhkov in ☄️ effector
хотя можно вынести вне компонента...
источник

MK

Maxim Kolesnikov in ☄️ effector
🦜
ивент не создается
Хендлер.
источник

🦜

🦜 in ☄️ effector
юниты эффектора статичны, если это не фабрика
источник

MK

Maxim Kolesnikov in ☄️ effector
🦜
onClick={() => event()}
Ладно, тогда на этом остановлюсь варианте.
источник

OR

Oleg Rizhkov in ☄️ effector
🦜
юниты эффектора статичны, если это не фабрика
источник

🦜

🦜 in ☄️ effector
lol
источник

🦜

🦜 in ☄️ effector
потому что ты в onClick вызов запихнул
источник

🦜

🦜 in ☄️ effector
const handler = event.prepend(noop)
onClick={handler} <- ссылка

onClick={event.prepend(noop)} <- вызов и создание ивента на каждый рендер
источник

OR

Oleg Rizhkov in ☄️ effector
🦜
потому что ты в onClick вызов запихнул
как меняет кардинально?
const Todo = () => {
 const hendler = () => {
   console.log('AAA')
 }
 return <Todo handler={handler} />
}
это создаёт новый handler на каждый ререндер, так?
источник

🦜

🦜 in ☄️ effector
Oleg Rizhkov
как меняет кардинально?
const Todo = () => {
 const hendler = () => {
   console.log('AAA')
 }
 return <Todo handler={handler} />
}
это создаёт новый handler на каждый ререндер, так?
в том, что не в теле компонента нужно создавать
источник

🦜

🦜 in ☄️ effector
const handler = event.prepend(noop)
const Todo = () => {
 return <Todo handler={handler} />
}
источник

OR

Oleg Rizhkov in ☄️ effector
Oleg Rizhkov
хотя можно вынести вне компонента...
а, ну как я и подумал. сначала думал, ты про комп.
источник

MK

Maxim Kolesnikov in ☄️ effector
🦜
onClick={() => event()}
Так а тут тоже будет новый хендлер на каждый рендер?
источник