react初步学习(一)--Hooks的使用

235 阅读1分钟

学习背景

最近公司项目用到了react + ant-design-pro,在实践过程中,学习了react,这边文章主要分享下Hooks

react Hooks

使用背景

Hook是可以在函数组件中“钩入”react state及生命周期等特性的函数,不能在class组件中使用

使用意义

可以在不编写class的情况下使用state以及其他特性

学习笔记

Hook 完全可选 向后兼容 现在可用

  1. useState 在class中 ,可以通过在构造函数中设置this.state来初始化 在函数组件中没有this,不能读取分配this.state,直接在组件中调用useState Hook eg: const [count,setCount] = useState(0) count 定义的state变量 setCount 改变该变量的方法 0 初始化的值
  2. Effect 给函数组件增加了操作副作用的能力,跟class组件中的componentDidMount、componentDidUpdate和componentWillUnmount 具有相同的用户,只不过被合并成为了一个API 通过使用这个Hook,可以告知react组件需要在渲染后执行某些操作。react会保存传递的函数,并且在执行DOM更新之后调用他。 将useEffect放在组件内部让我们可以在effect中直接访问 state变量。试用了闭包机制。 useEffect 在第一次渲染之后和每次更新之后都会执行 eg: useEffect(()=>{ console.log(count)},[count]) // 仅在count更改时更新 3.自定义Hook必须以use开头 约定 否则无法判断某个函数是否包含对齐内部Hook的调用,无法自动检查你的Hook是否违反了Hook的规则