示例查看 http://qinwang.battlebanpick.com/hooks
安装
yarn add @nuonuonuonuoyan/hooks
或npm i @nuonuonuonuoyan/hooks
useStore
一个极简的全局共享状态管理工具
对于子组件和父组件以及层级较为简单的共享状态的情况,仍然强烈推荐直接使用 props
传递属性给子组件。 useStore
适合的是在距离较远的组件之间进行状态共享。
API
import { useStore } from '@nuonuonuonuoyan/hooks';
const Demo = () => {
const [state, setState] = useStore(namespace, initState, options);
...
...
}
Params
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
namespace | 命名空间,每一组状态命名空间唯一 | string |
global |
initState | 同 useState,初始值 | any |
- |
options | 额外的配置项 | Options |
- |
Options
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
asyncNameSpace | 异步加载的组件需要添加该属性,并且传入的值需要和 namespace 的值相同,否则无法获取到共享状态 | string |
- |
Result
参数 | 说明 | 类型 |
---|---|---|
state | 全局共享的状态值 | any |
setState | 改变共享状态的函数,用法同 useState | () => void |
useLazyLoad
图片懒加载
import { useLazyload } from '@nuonuonuonuoyan/hooks';
API
Params
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
domList | 传入的 dom 集合 | dom[] |
[] |