M
Size: a a a
M
M
const increment = declareAction();возможно, на синтетическом примере непонятно в чем дело, вот более реальный пример. когда мы работаем с асинхронными вещами типа запроса к API, наш стейт до успешного резолва находится в начальном состоянии
const arrayAtom = declareAtom([], on => [on(increment, state => [...state, 1])])
const firstElementAtom = map(arrayAtom, value => value[0]) // вернет undefined
const state = {
items: []
}
послеconst state = {
items: [1, 1, 1]
}
и наш атом-наследник, которому, допустим, нужен 2 элемент поля items упадет, так как начальный массив пустой и возвращается undefined.И
const increment = declareAction();возможно, на синтетическом примере непонятно в чем дело, вот более реальный пример. когда мы работаем с асинхронными вещами типа запроса к API, наш стейт до успешного резолва находится в начальном состоянии
const arrayAtom = declareAtom([], on => [on(increment, state => [...state, 1])])
const firstElementAtom = map(arrayAtom, value => value[0]) // вернет undefined
const state = {
items: []
}
послеconst state = {
items: [1, 1, 1]
}
и наш атом-наследник, которому, допустим, нужен 2 элемент поля items упадет, так как начальный массив пустой и возвращается undefined.И
const increment = declareAction();возможно, на синтетическом примере непонятно в чем дело, вот более реальный пример. когда мы работаем с асинхронными вещами типа запроса к API, наш стейт до успешного резолва находится в начальном состоянии
const arrayAtom = declareAtom([], on => [on(increment, state => [...state, 1])])
const firstElementAtom = map(arrayAtom, value => value[0]) // вернет undefined
const state = {
items: []
}
послеconst state = {
items: [1, 1, 1]
}
и наш атом-наследник, которому, допустим, нужен 2 элемент поля items упадет, так как начальный массив пустой и возвращается undefined.M
И
d
a
a
a
d
d
a
a
d
a

handle?a

И
state => {
fn(() => state = ...)
return state
}
Ну такое 🥴AK

handle?a
state => {
fn(() => state = ...)
return state
}
Ну такое 🥴