【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

总结:

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

相关推荐
晴虹几秒前
lecen:一个更好的开源可视化系统搭建项目--组件和功能按钮的权限控制--全低代码|所见即所得|利用可视化设计器构建你的应用系统-做一
前端·后端·低代码
爱分享的鱼鱼2 分钟前
Pinia 深度解析:现代Vue应用状态管理最佳实践
前端·后端
花归去4 分钟前
echarts 柱状图包含右侧进度
开发语言·前端·javascript
沐浴露z15 分钟前
学习通“只能录入不能粘贴” 解决方案与原理分析
javascript
多看书少吃饭19 分钟前
Vite开发环境按需编译是怎么实现的
前端
ybb_ymm28 分钟前
@Async修饰不生效
java·前端·数据库
Sapphire~31 分钟前
Vue3-03 熟悉src文件夹及Vue文件格式
前端·javascript·vue.js
快乐星球37236 分钟前
鸿蒙5、6用户h5页面使用schemeURL跳转小程序失败
前端
ChangYan.1 小时前
Electron使用ffi-napi报错External buffers are not allowed解决办法
前端·javascript·electron
Sept9401 小时前
详解实现属性的全面拦截
前端