Size: a a a

2020 June 13

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
с  этим давно надо было отрешить, раз пошли сторонние решения, то дальше откладывать нельзя
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
это общий вопрос же, не одиночно всплывший нюанс
источник

c⁣

createStore<🦉>... in ☄️ effector
может есть смысл исключить массивы аргументов пока что?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
createStore<🦉> ⁣
может есть смысл исключить массивы аргументов пока что?
тогда код такой будет

const readConfig = (part, reader, target = {}) => {
 if (typeof part !== 'object' || part === null)
   return target
 if (part.config)
   readConfig(part.config, reader, target)
 reader(part, target)
 if (part.ɔ)
   readConfig(part.ɔ, reader, target)
 return target
}
источник

c⁣

createStore<🦉>... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
тогда код такой будет

const readConfig = (part, reader, target = {}) => {
 if (typeof part !== 'object' || part === null)
   return target
 if (part.config)
   readConfig(part.config, reader, target)
 reader(part, target)
 if (part.ɔ)
   readConfig(part.ɔ, reader, target)
 return target
}
а как его применять?
источник

c⁣

createStore<🦉>... in ☄️ effector
reader это функция, хм
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
function throttle(arg) {

 const {
   sid,
   timeout,
   name = '??'
 } = readConfig(arg, (part, target) => {
   if (part.sid) target.sid = part.sid
   if (part.name) target.name = part.name
 })

}
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
типичный tree walk, кстати
источник

c⁣

createStore<🦉>... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
function throttle(arg) {

 const {
   sid,
   timeout,
   name = '??'
 } = readConfig(arg, (part, target) => {
   if (part.sid) target.sid = part.sid
   if (part.name) target.name = part.name
 })

}
также source как и timeout будет работать, да?
источник

c⁣

createStore<🦉>... in ☄️ effector
хм
выглядит весьма лаконично
источник

c⁣

createStore<🦉>... in ☄️ effector
🚀🔬 🚀🔬🚀🔬
function throttle(arg) {

 const {
   sid,
   timeout,
   name = '??'
 } = readConfig(arg, (part, target) => {
   if (part.sid) target.sid = part.sid
   if (part.name) target.name = part.name
 })

}
а аргумент reader можно сделать дефолтным?
источник

c⁣

createStore<🦉>... in ☄️ effector
типа так
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
да, именно так)
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
в эффекторе по сути это просто заинлайнено (раньше был всего один кейс), а так суть та же)
источник

c⁣

createStore<🦉>... in ☄️ effector
теперь буду разбираться (тестирую без плагина)
источник

c⁣

createStore<🦉>... in ☄️ effector
источник

c⁣

createStore<🦉>... in ☄️ effector
или в reader и надо передавать функцию со всеми этими аргументами source, timeout, и прочим?
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
createStore<🦉> ⁣
типа так
вроде и так норм
источник

c⁣

createStore<🦉>... in ☄️ effector
чет пока не пойму
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
createStore<🦉> ⁣
чет пока не пойму
источник