react hooks学习总结

学完这个,react就告一段落了。

react hooks解决的问题:

1.函数式组件不能使用state

之前只能用于一些简单而无交互的场景。

2.副作用的问题。

通常数据的获取、订阅或者手动修改React DOM这些行为,我们成为副作用;

 

react提供useEffect 这个API来处理组件的副作用问题。

取代了componentDidMount,componentDidUpdate和componentWillUnmount这几个生命周期。

 

3.解决代码复用的问题。

4.复杂的状态管理

useReducer、useContext

5.效率和质量

代码更简洁

 

useState

import React from "react";

import { useState } from "react";

const Example = () => {
  const [count, setCount] = useState(0);

  return (
    <div>
      <p> 你点击了 {count}次 </p>{" "}
      <button onClick={() => setCount(count + 1)}> 增加 </button>{" "}
    </div>
  );
};

export default Example;

useEffect

import React, { useState,useEffect } from "react";

const Example = () => {
  const [count, setCount] = useState(0);
    useEffect(()=>{
document.title=`你点击了 ${ count }次`;
	})

在第一个参数callback中返回一个函数,用于清理工作;

    useEffect(()=>{
return ()=>{
//清理工作,类似于componentWillUnmount
}
	})

    useEffect(()=>{
document.title=`你点击了 ${ count }次`;
	},[])//只渲染一次,相当于componentDidMount



    useEffect(()=>{
document.title=`你点击了 ${ count }次`;
	},[count])//相当于componentDidMount,componentDidUpdate,count改变才变化

//useEffec可以执行多次;


  return (
    <div>
      <p> 你点击了 {count}次 </p>{" "}
      <button onClick={() => setCount(count + 1)}> 增加 </button>{" "}
    </div>
  );
};

export default Example;

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值