react-multi-context多上下文管理组件
多个 React 上下文的统一管理,用一个组件就能搞定,还挺省心。
react-multi-context的思路蛮巧妙的,利用一个工厂函数createMultiContext()
,你可以在项目里随时拉起一个多上下文实例,读取、设置都靠get
和set
两个属性,语义清晰,写起来也顺手。
最常见的场景比如你在做一个后台系统,有用户信息、主题色、权限配置这些状态要传来传去,放一个大 context 容易失控,拆多个又太啰嗦。用这个库就挺合适,一把梭统一管理。
用法也直白:
1. 安装:npm install react-multi-context
2. 初始化:const MyContext = createMultiContext()
3. 使用:MyContext.set('theme', 'dark')
,读取就是MyContext.get('theme')
它还支持 render prop 的形式注入值,响应也快。唯一要注意的点是,变动的是某个键值对时,只会触发用到那个键的组件重渲,粒度算蛮细的。
如果你手上项目里用到了多个 context,不妨试试这个库,能帮你省不少 context 切换的精力。
react-multi-context-master.zip
预估大小:12个文件
react-multi-context-master
文件夹
yarn.lock
273KB
webpack.config.js
636B
src
文件夹
index.js
5KB
.babelrc
179B
.npmignore
133B
.travis.yml
928B
LICENSE
1KB
README.md
5KB
110.65KB
文件大小:
评论区