HooX
HooX 介绍
HooX 是一个基于 hook 的轻量级的 react 状态管理工具。使用它可方便的管理 react 应用的全局状态,概念简单,完美支持 TS。HooX提供了函数式组件下的状态管理方案,以及完全基于函数式写法的一系列 API,让用户更加的拥抱函数式组件,走向未来更进一步。
HooX的实现非常简单,去除一些类型推导,约 100 行代码,完全基于 Context + Provider ,无任何黑科技,纯 react 原生机制与能力。
安装
npm install hooxjs -S
创建一个 Store
// counterStore.jsimport createHoox from 'hooxjs'const state = {count: 1}export const { getHoox,useHoox,createContainer } = createHoox(state)// 创建一个actionexport const up = () => {const [hooxState,setHoox] = getHoox()return setHoox({count: hooxState.count + 1})}// 创建一个computed数据export const useDoubleCount = () => {const [hooxState] = useHoox()return hooxState.count * 2}使用 Store
import react from 'react'
import reactDom from 'react-dom'
import { useHoox,useDoubleCount,up } from './counterStore'
function Child() {
const doubleCount = useDoubleCount()
return <div>{doubleCount}</div>
}
function Counter() {
const [hooxState] = useHoox()
return (
<div>
<div>{hooxState.count}</div>
<div onClick={() => up()} />
<Child />
</div>
)
}
const Container = createContainer(Counter)
reactDom.render(<Container />,document.getElementById('#root'))
GitHub:https://github.com/wuomzfx/hoox
网站描述:一个基于 hook 的轻量级的 React 状态管理工具