Метод привязки события или эффекта к scope для последующего вызова.
Иногда необходимо привязать события к scope явно, например, при вызове событий в рамках колбэков setTimeout/setInterval
Формула
scopeBind<T>(event: Event<T>): (payload: T) => void
Аргументы
event
: Событие для привязки к scope
Пример
Мы собираемся вызвать changeLocation
внутри колбэка history.listen
, поэтому у эффектора нет возможности связать событие с соответствующей областью видимости, и мы должны явно привязать событие к области видимости с помощью scopeBind
const installHistory = app.createEvent<any>()
const changeLocation = app.createEvent<string>()
installHistory.watch(history => {
const locationUpdate = scopeBind(changeLocation)
history.listen(location => {
locationUpdate(location.pathname)
})
})
Документация на английском языке - самая актуальная, поскольку её пишет и обновляет команда effector. Перевод документации на другие языки осуществляется сообществом по мере наличия сил и желания.
Помните, что переведенные статьи могут быть неактуальными, поэтому для получения наиболее точной и актуальной информации рекомендуем использовать оригинальную англоязычную версию документации.