본문으로 건너뛰기

함수: _injectStore()

function _injectStore<TState, TActions, TSelected>(
store,
selector,
options?): [Signal<TSelected>, [TActions] extends [never] ? (updater) => void : TActions];

정의 위치: packages/angular-store/src/_injectStore.ts:24

injectAtom의 패턴을 본뜬, 스토어용 실험적 읽기·쓰기 통합 주입 함수입니다.

스토어에 액션 팩터리가 있으면 [signal, actions]를 반환하고, 일반 스토어이면 [signal, setState]를 반환합니다.

타입 매개변수

TState

TState

TActions

TActions extends StoreActionMap

TSelected

TSelected = NoInfer&lt;TState>

매개변수

store

Store&lt;TState, TActions>

selector

(state) => TSelected

options?

InjectSelectorOptions&lt;TSelected>

반환값

[Signal&lt;TSelected>, [TActions] extends [never] ? (updater) => void : TActions]

예시

// Store with actions
readonly result = _injectStore(petStore, (s) => s.cats)
// result[0] is Signal<number>, result[1] is actions

// Store without actions
readonly result = _injectStore(plainStore, (s) => s)
// result[0] is Signal<number>, result[1] is setState