Size: a a a

2021 March 20

MK

Maxim Koylo in ☄️ effector
а если написать скрипты которые целый день будут удалять нод модули и устанавливать эффектор?)
источник

А

Антон in ☄️ effector
Та ну нечестно)
источник

А

Антон in ☄️ effector
Лучше форсить везде статьи, развивать сообщество и т.п
источник

MK

Maxim Koylo in ☄️ effector
Антон
Лучше форсить везде статьи, развивать сообщество и т.п
давай и ты начинай💪
источник

А

Антон in ☄️ effector
Уже, но пока все черновики, я просто заметил когда хочешь что-то новое узнать, лучший метод это писать статью как будто ты кому то это поясняешь))
источник

MK

Maxim Koylo in ☄️ effector
Антон
Уже, но пока все черновики, я просто заметил когда хочешь что-то новое узнать, лучший метод это писать статью как будто ты кому то это поясняешь))
вот так я и хочу
источник

MK

Maxim Koylo in ☄️ effector
еще думаю рубрику за аналогию как оно на редаксе с сагами и как этот же функционал на эффекторе
источник

MK

Maxim Koylo in ☄️ effector
но как подумаю что это нужно на редаксе писать так душнина накатывает
источник

DS

Dmitriy Shuleshov in ☄️ effector
Maxim Koylo
в Украине он увы очень слаб, я его не видел и не слышал никгде у нас
источник

I

Iri 🛸 in ☄️ effector
Maxim Koylo
еще думаю рубрику за аналогию как оно на редаксе с сагами и как этот же функционал на эффекторе
Идея отличная
источник

NK

ID:0 in ☄️ effector
Lockable event

event - в рамках Effector это какое-то событие в системе, например нажатие кнопки пользователем

lockable это своя самописная обертка которая принимает переданное ей событие и возвращает два события lock и unlock, а так же событие target на которое можно подписаться для получения не проигнорированных событий

-------------------------

Пример использования:

const trigger = createEvent();

const [lock, unlock, target] = lockable(trigger);

target.watch(console.log);

trigger("A"); // => "A"

lock();
trigger("B"); // nothing happens
unlock();

trigger("C"); // => "C"


-------------------------

Разберем по строчно
// создаем событие trigger, которое может быть вызвано нами или юзером
const trigger = createEvent();

// передаем наше событие в обертку которая возвращает
// нам два события lock и unlock, а так же target
const [lock, unlock, target] = lockable(trigger);

// подписываемся на уведомления от target
// и вызываем наше событие попутно дергая lock или unlock

target.watch(console.log);
trigger("A"); // => "A"

lock();
trigger("B"); // nothing happens
unlock();

trigger("C"); // => "С"


-------------------------

Реализация lockable

function lockable(event) {
 const lock = createEvent();
 const unlock = createEvent();

 const $unlocked = createStore(true)
   .on(lock, () => false)
   .on(unlock, () => true);

 const target = guard(event, {
   filter: $unlocked,
 });

 return [lock, unlock, target];
}


-------------------------

Разбор
1. Создаем два события для локов
2. Создаем стор который отвечает за состояние лока - $unlocked (примечание: в effector для сторов принято приписывать префикс $ чтобы стразу было понятно что мы работаем со стором)
3. Через on мы навешиваем наши события и во втором параметре функции редюсере мы обрабатываем то как наши события изменяют стор, в нашем случае мы просто меняем флаг состояния лока
4. получения именно тех событий которые прошли фильтр

В следующем посте я хочу показать как мы можешь работать с этим на практическом примере в реакте и то как мы можешь комбинировать наше полученное апи lockable с остальным апи effector

Весь код можно потыкать в репле, если что-то не совсем понятно то велком в коментарии
https://share.effector.dev/hZ40ElwJ
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Антон
Ну так скачиваний мало 🌚
у reselect 3,517,768 загрузок в неделю, из них 1,796,308 даёт babel-plugin-module-resolver
источник

MK

Maxim Koylo in ☄️ effector
🚀🔬 🚀🔬🚀🔬
у reselect 3,517,768 загрузок в неделю, из них 1,796,308 даёт babel-plugin-module-resolver
читерство
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
Maxim Koylo
а если написать скрипты которые целый день будут удалять нод модули и устанавливать эффектор?)
лучше иметь честную статистику просто чтобы понимать эффект от своих действий
источник

MK

Maxim Koylo in ☄️ effector
у меня на одном проекте был очень душный чел по отношению популярности, что бы убедить его что либа на 4к лямов скачиваний обьективно лучше либы на 5лямов скачиваний это 5 кругов ада надо было пройти
источник

🚀🚀

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

А

Антон in ☄️ effector
ед. отпугивающий фактор малой популярности, не найдешь ответа на стеке, а для многих это прям АРГУМЕНТ, хотя в чатике всем отвечают на вопросы
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
у меня есть гипотеза что выход новых версий увеличивает количество загрузок из-за инвалидации кэша у проектов
источник

🚀🚀

🚀🔬 🚀🔬🚀🔬... in ☄️ effector
например у эффектора версии 21.8 на данный момент 10 патчей
источник

DS

Dmitriy Shuleshov in ☄️ effector
https://www.npmjs.com/package/@discoveryjs/json-ext

70 звезд 1млн загрузок
источник