自定义Hooks

优点有二:

—是方便进行逻辑复用;
二是帮助关注分离。

创建方式:

函数名 以use开头的,并且函数体内使用的原生hooks.

使用hooks的好处之一是可以修改组件的state,让页面更新,但是常规的工具函数类并不能做到更新页面.

 

复杂状态管理

怎么使用最优与最合理的方式去管理你的应用程序状态?

原则一:在保证state完整性的同时,保证状态最小化

1.减少将组件state当做变量来使用,2.某些数据如果能够依据已有的state计算得到的话,就不要另起一个state去保存计算结果.

实现思路:开发一个功能时,按照React状态驱动UI的思想,首先考虑的是整个功能有哪几个状态,然后再定义一个新的状态的时候,再三拷问自己,这个状态必须定义吗?能否通过计算得到?

原则二:避免中间状态,确保唯一数据源,

保证组件传进来的数据源发生改变时,组件内部使用了这个数据的状态也要更新过来,例子就是url的参数发生变化,

但是组件却并没有监听到对应的变化做出改变.正确的做法是使用useSearchParam这个钩子来监听参数的变化.

 

posted @ 2022-05-11 09:30  古德拉克  阅读(80)  评论(0编辑  收藏  举报