IAtomConstructor interface
Home > facade > IAtomConstructor
IAtomConstructor interface
Конструктор атома
Signature:
export interface IAtomConstructor<D> extends IAtomCoreConstructor
Remarks
Функция-константа, расширяет IAtomCoreConstructor
Example
import A from 'alak'const atom = A() // сокращённая запись A.proxy()
Methods
Method | Description |
---|---|
from(atoms) | Создать атом из нескольких других атомов и стратегии вычисления. Смотрите описание стратегий: ComputeStrategy. |
holistic() | Создать атом, с аргументами передающимися в функции-добытчики в полном числе. IAtom.stateless(). |
id(id, startValue) | Создать атом c предустановленным идентификатором IAtom.setId(). |
setGetter(getterFn) | Создать атом c функцией добытчика IAtom.setGetter(). |
setOnceGet(getterFn) | Создать атом c функцией добытчика IAtom.setGetter(). |
setWrapper(wrapperFun) | Создать атом c функцией обёртки IAtom.setWrapper(). |
stateless() | Создать атом, с контейнерем не запоминающием значение. IAtom.stateless(). |
from() method
Создать атом из нескольких других атомов и стратегии вычисления. Смотрите описание стратегий: ComputeStrategy.
Signature:
from<IN extends IAtom<any>[]>(...atoms: IN): ComputeStrategicAtom<IN>;
Parameters
Parameter | Type | Description |
---|---|---|
atoms | IN | набор входных атомов для вычисления значения |
Returns:
ComputeStrategicAtom<IN>
Example
const a1 = A(1)const a2 = A(2)const computedAtom = A .from(a1, a2) .some((v1, v2) => v1 + v2)console.log(computedAtom()) //output:3
holistic() method
Создать атом, с аргументами передающимися в функции-добытчики в полном числе. IAtom.stateless().
Signature:
holistic(): IAtom<MaybeAny<D>>;
Returns:
IAtom<MaybeAny<D>>
Remarks
Сокращённая запись A().holistic()
id() method
Создать атом c предустановленным идентификатором IAtom.setId().
Signature:
id<T>(id: string | number, startValue?: T): IAtom<MaybeAny<T>>;
Parameters
Parameter | Type | Description |
---|---|---|
id | string ا number | идентификатор |
startValue | T | стартовое значение |
Returns:
IAtom<MaybeAny<T>>
Remarks
Сокращённая запись A().setId(id)
setGetter() method
Создать атом c функцией добытчика IAtom.setGetter().
Signature:
setGetter<T>(getterFn: () => T): IAtom<T>;
Parameters
Parameter | Type | Description |
---|---|---|
getterFn | () => T | функция-добытчик |
Returns:
IAtom<T>
Remarks
Сокращённая запись A().setGetter(fun)
setOnceGet() method
Создать атом c функцией добытчика IAtom.setGetter().
Signature:
setOnceGet<D>(getterFn: () => D): IAtom<D>;
Parameters
Parameter | Type | Description |
---|---|---|
getterFn | () => D | функция-добытчик |
Returns:
IAtom<D>
Remarks
Сокращённая запись A().setOnceGet(fun)
setWrapper() method
Создать атом c функцией обёртки IAtom.setWrapper().
Signature:
setWrapper<T>(wrapperFun: (v: D) => T): IAtom<MaybeAny<T>>;
Parameters
Parameter | Type | Description |
---|---|---|
wrapperFun | (v: D) => T | функция-обёртка |
Returns:
IAtom<MaybeAny<T>>
Remarks
Сокращённая запись A().setWrapper(wrapperFun)
stateless() method
Создать атом, с контейнерем не запоминающием значение. IAtom.stateless().
Signature:
stateless(): IAtom<MaybeAny<D>>;
Returns:
IAtom<MaybeAny<D>>
Remarks
Сокращённая запись A().stateless()