Ответ
allSettled
в Effector — это комбинатор, который позволяет запускать несколько эффектов параллельно и дожидаться завершения всех из них (независимо от успешности). Возвращает массив объектов с результатами каждого эффекта.
Пример:
import { allSettled, createEffect } from 'effector';
const fetchUser = createEffect(/*...*/);
const fetchPosts = createEffect(/*...*/);
// Запуск эффектов
const results = await allSettled({
user: fetchUser,
posts: fetchPosts
});
// results будет содержать:
// {
// user: { status: 'done', value: ... } | { status: 'fail', error: ... },
// posts: { status: 'done', value: ... } | { status: 'fail', error: ... }
// }
Ключевые особенности:
- Не прерывается при ошибке в одном из эффектов
- Возвращает объект с результатами всех эффектов
- Полезен, когда нужно выполнить несколько независимых запросов