【React-hooks篇幅】自定义hooks

首先得了解自定义 Hooks 跟普通函数区别在于哪里?

  • Hooks 只应该在 React 函数组件内调用,而不应该在普通函数调用。
  • Hooks 能够调用诸如 useState、useEffect、useContext等,普通函数则不能。由此可以通过内置的Hooks等来获得Firber的访问方式,例如可以在当前节点用useRef存点数据。

运用场景:

静态数据处理,用来常量变更的,比如 通用表头,与store和context不一样的是,不用渗透,不会记忆变更,可用作取或者修改想要的数据。

优点:

hooks和react生命周期都可用

灵活性,操作性很强

与mixin混合自定义很像

缺点:

兼容性有问题,因为是hooks写法,只能支持在 hooks文件调用,不支持内组件class component

eslint请用use命名函数,不然会出警告。

代码块:

复制代码
//e可传入参数,比如默认值
const useCommonData = (e:any)=>{
  const [a, setA] = useState(e);
  return {a,setA}
}
export default useCommonData 

调用的话

复制代码
import useCommonData  form "./xxxx
const b = ()=>{
const {a,setA} = useCommonData("1")
}
export default b

总结:

既然都是玩数据的时代了,骚操作走起来,努力加强自己!

相关推荐
袅沫1 小时前
Nginx中部署多个前端项目——区分路径
服务器·前端
Asize2 小时前
为什么写代码前要先规划组件树?Next.js + Redis 笔记系统实战
前端·javascript·next.js
meilindehuzi_a2 小时前
Next.js 全栈基础实战:从 SPA、SSR 到 App Router 与 Todo API
开发语言·javascript·ecmascript
用户921080262862 小时前
6. 数据大屏 WebSocket 稳定性优化:心跳检测、断点续传和消息去重
前端
柚yuzumi2 小时前
CSS 定位布局:让元素各就各位
前端·css
光影少年2 小时前
react navite图片加载优化、大图卡顿、缓存策略
前端·react native·react.js
小林ixn2 小时前
用 Next.js 和 Redis 撸一个 Markdown 笔记系统:RSC 实战与组件化拆解
前端·redis·next.js
渣波2 小时前
重构旅行体验:基于 React 的 AI 旅游助手对话系统实战解析
前端·javascript
今日无bug2 小时前
列表转树:一道题搞懂 HashMap 在算法里的价值
前端·数据结构
用户921080262862 小时前
5. 数据大屏实时通信第一步:为什么选择 WebSocket,以及如何接入 Socket.IO
前端