网站页面宽度,一个网站项目多少钱,单页面网站模板怎么做,快速提高关键词排名的软件什么是Hooks
Hooks从语法上来说是一些函数。这些函数可以用于在函数组件中引入状态管理和生命周期方法。
React Hooks的优点
简洁 从语法上来说#xff0c;写的代码少了上手非常简单 基于函数式编程理念#xff0c;只需要掌握一些JavaScript基础知识与生命周期相关的知识不…什么是Hooks
Hooks从语法上来说是一些函数。这些函数可以用于在函数组件中引入状态管理和生命周期方法。
React Hooks的优点
简洁 从语法上来说写的代码少了上手非常简单 基于函数式编程理念只需要掌握一些JavaScript基础知识与生命周期相关的知识不用学react Hooks使用全新的理念来管理组件的运作过程与HOC相关的知识不用学React Hooks能够完美解决HOC想要解决的问题并且更可靠Mobx取代了Redux做状态管理 代码复用性更好与Typescript结合更简单
React Hooks的缺点
状态不同步 在异步操作的函数中访问的状态还是原来的状态的值useEffect依赖问题 当useEffect依赖的数据变多后会导致频繁触发
React Hooks的注意事项
命名规范 自定义Hooks的命名一律使用use作为前缀形如useXXX仅在最外层调用React Hooks仅从react函数中调用react Hooks 在自定义Hooks或者组件中调用Hooks
useContext
Context是一种对其所包含组件树提供全局共享数据的技术而useContext是在React Hooks对Context进行的封装。它可以帮助我们跨越组件层级直接传递函数实现数据共享让使用变得简单。
createContext
createContext(initialValue)
initialValueinitialValue是context的初始值
useContext返回的对象包含两个属性
Provider提供者是React组件使用Provider标签包裹后的组件自身及其后代都可以访问Context的值Consumer消费者是React组件使用Consumer包裹后可以使用render props的方式渲染内容获取context的值。
const MyContext React.CreateContext()function Demo() {const [userName,setUserName]useState();const {Provider,Consumer} useContext(MyContext);return Provider value{userName}B/B/Provider/
}function Child {const context useContext(MyContext);render(){return C/C/}
}
function C {return Consumer{value 姓名是${value.userName}}/Consumer/
}