ahooks
-
Ahooks 是怎么处理 DOM 的?
一个优秀的工具库应该有自己的一套输入输出规范,一来能够支持更多的场景,二来可以更好的在内部进行封装处理,三来使用者能够更加快速熟悉和使用相应的功能,能做到举一反三。
-
Ahooks 的 UseClickAway 在 React 17 中不工作了,该怎么办?
经常用到的组件挂载以及卸载的 useMount、useUnmount,还有支持自动请求、手动请求、防抖等各种功能请求 useRequest,以及可以将状态同步存取到 localStorage 的 useLocalStorageState。
-
如何让定时器在页面最小化的时候不执行?
setTimeout 和 setInterval 作为事件循环中宏任务的“两大主力”,它的执行时机不能跟我们预期一样准确的,它需要等待前面任务的执行。
-
Ahooks 中那些控制“时机”的 Hook 都是怎么实现的?
在 Function Component 中,使用 useEffect/useLayoutEffect 完成了 Class Components 生命周期的职责。ahooks 也是基于这两个封装了常见的代码执行时机,使用这些 hook,可以让我们的代码更加具有可读性以及逻辑更加清晰。
-
聊聊 Ahooks 是怎么解决用户多次提交问题?
通过 axios 拦截器以及其 CancelToken 功能,我们能够在拦截器中自动将已发的请求取消,当然假如有一些接口就是需要重复发送请求,可以考虑加一下白名单功能,让请求不进行取消。
-
大家都能看得懂的源码之 Ahooks 整体架构篇
peerDependencies 的目的是提示宿主环境去安装满足插件 peerDependencies 所指定依赖的包,然后在插件 import 或者 require 所依赖的包的时候,永远都是引用宿主环境统一安装的 npm 包,最终解决插件与所依赖包不一致的问题。这里的宿主环境一般指的就是我们自己的项目本身了。