@jingoz/zlight
Version:
一个轻量级的仿 zustand 的 React 状态管理库
17 lines (12 loc) • 564 B
text/typescript
import { createStoreVanillaImpl, TCreatorFn } from '../vanilla'
import { TCreator } from './types'
import { useStore } from './useStore'
export * from './types'
export * from './useStore'
export function createStateImpl<S>(createFn: TCreatorFn<S>) {
const api = createStoreVanillaImpl(createFn)
const useBoundStore: any = (selector: (state: S) => any) => useStore(api, selector)
Object.assign(useBoundStore, api)
return useBoundStore
}
export const create: TCreator = <S>(createStateFn: TCreatorFn<S>) => createStateImpl(createStateFn)