Эта страница еще не переведена

Чтобы добавить перевод, откройте Pull Request по этой ссылке.

Отображается содержимое для языка по умолчанию.

Methods

allSettled(unit, {scope, params?})

Calls the provided unit within the current scope and wait for all triggered effects to complete.

Formulae

allSettled<T>(unit: Event<T>, {scope: Scope, params?: T}): Promise<void>
allSettled<T>(unit: Effect<T, Done, Fail>, {scope: Scope, params?: T}): Promise<
  | {status: 'done'; value: Done}
  | {status: 'fail'; value: Fail}
>
allSettled<T>(unit: Store<T>, {scope: Scope, params?: T}): Promise<void>

Arguments

  1. unit: Event or Effect to be called
  2. scope: Scope
  3. params: params passed to unit
since

Return value for effect is supported since effector 21.4.0

Examples

Contribution

TBD

Please, open PullRequest and contribute examples for this section via “Edit this page” link below.

allSettled(scope)

Checks the provided scope for any ongoing computations and wait for their completion.

Formulae

allSettled<T>(scope): Promise<void>

Arguments

  1. scope: Scope
since

Supported since effector 22.5.0

Examples

Usage in tests

For example, tests that validate the integration with an external reactive API

import {createEvent, sample, fork, scopeBind, allSettled} from 'effector'

test('integration with externalSource', async () => {
  const scope = fork()

  const updated = createEvent()

  sample({
    clock: updated,
    target: someOtherLogicStart,
  })

  // 1. Subscribe event to external source
  const externalUpdated = scopeBind(updated, {scope})
  externalSource.listen(() => externalUpdates())

  // 2. Trigger update of external source
  externalSource.trigger()

  // 3. Wait for all triggered computations in effector's scope, even though these were not triggered by effector itself
  await allSettled(scope)

  // 4. Check anything as usual
  expect(...).toBe(...)
})
Перевод поддерживается сообществом

Документация на английском языке - самая актуальная, поскольку её пишет и обновляет команда effector. Перевод документации на другие языки осуществляется сообществом по мере наличия сил и желания.

Помните, что переведенные статьи могут быть неактуальными, поэтому для получения наиболее точной и актуальной информации рекомендуем использовать оригинальную англоязычную версию документации.

Соавторы