基础Hook

1、useState

const [state, setState] = useState(initialState);
//返回一个state变量,指为initialState,setState函数用来设置state的值 setState(1)

2、useEffect

const [count, setCount] = useState(1)
useEffect(()=>{
console.log(count)
})

useEffect相当于三个生命周期函数:componentDidMount、componentDidUpdate、componentWillUnMount。

useEffect接收两个参数,第二个参数传入空数组,相当于生命周期componentDidMount、componentWillUnMount,只执行一次。没有参数相当于componentDidMount、componentDidUpdate,传入[count]只监听count的变化,发生变化才会触发第一个参数中的函数。在第一个参数传入的函数中retrun ()=>{}相当于才componentWillUnMount。

3、useContext

const MyContext = React.createContext();
function MainPage(){
return (
<div>
<MyContext.provider value="hello world">
<ChildPage />
</MyContext.provider>
</div>
)
} function ChildPage(){
return(
<div>
<p>{ useContext(MyContext) }</p>
</div>
)
}

Hook新特性(一)的更多相关文章

  1. 关于为什么使用React新特性Hook的一些实践与浅见

    前言 关于Hook的定义官方文档是这么说的: Hook 是 React 16.8 的新增特性.它可以让你在不编写 class 的情况下使用 state 以及其他的 React 特性. 简单来说,就是在 ...

  2. Entity Framework Core 2.0 新特性

    本文翻译来自:https://docs.microsoft.com/en-us/ef/core/what-is-new/index 一.模型级查询过滤器(Model-level query filte ...

  3. webpack4新特性介绍

    导语: webpack是一个JS应用打包器, 它将应用中的各个模块打成一个或者多个bundle文件.借助loaders和plugins,它可以改变.压缩和优化各种各样的文件.它的输入是不同的资源,比如 ...

  4. react新特性 react hooks

    本文介绍的是react新特性react hooks,本文面向的是有一定react开发经验的小伙伴,如果你对react还不是很熟悉的话我建议你先学习react并多多联系. 首先我们都知道react有3种 ...

  5. 30分钟精通React今年最劲爆的新特性——React Hooks

    你还在为该使用无状态组件(Function)还是有状态组件(Class)而烦恼吗? --拥有了hooks,你再也不需要写Class了,你的所有组件都将是Function. 你还在为搞不清使用哪个生命周 ...

  6. kubernetes 1.15 有哪些让人眼前一亮的新特性?

    原文链接:kubernetes 1.15 有哪些让人眼前一亮的新特性? 2019 年 6 月 20 日,Kubernetes 重磅发布了 1.15 版本,不过笔者忙到现在才有空认真来看一下到底更新了哪 ...

  7. Vue3.0新特性

    Vue3.0新特性 Vue3.0的设计目标可以概括为体积更小.速度更快.加强TypeScript支持.加强API设计一致性.提高自身可维护性.开放更多底层功能. 描述 从Vue2到Vue3在一些比较重 ...

  8. SQL Server 2014 新特性——内存数据库

    SQL Server 2014 新特性——内存数据库 目录 SQL Server 2014 新特性——内存数据库 简介: 设计目的和原因: 专业名词 In-Memory OLTP不同之处 内存优化表 ...

  9. ElasticSearch 5学习(10)——结构化查询(包括新特性)

    之前我们所有的查询都属于命令行查询,但是不利于复杂的查询,而且一般在项目开发中不使用命令行查询方式,只有在调试测试时使用简单命令行查询,但是,如果想要善用搜索,我们必须使用请求体查询(request ...

  10. [干货来袭]C#6.0新特性

    微软昨天发布了新的VS 2015 ..随之而来的还有很多很多东西... .NET新版本 ASP.NET新版本...等等..太多..实在没消化.. 分享一下也是昨天发布的新的C#6.0的部分新特性吧.. ...

随机推荐

  1. nginx客户端真实IP配置

    https://www.cnblogs.com/kevingrace/p/8269955.html include mime.types; default_type application/octet ...

  2. kubernetes 集群部署问题点统计

    1.安装网络插件报错 error unable to recognize "calico.yaml": no matches for kind "DaemonSet&qu ...

  3. Spring Boot--自定义异常类

    1.业务异常 /** * @Description: 业务异常 * @Author: Yaoson * @Create: 2022/4/21 0:05 **/ public class Busines ...

  4. 达梦数据库manager工具坑

    领导突然说要用达梦的数据库,对此完全没有了解. 安装没有问题. 但是这个工具真的坑到了. 因为之前用的都是navicat 干mysql ,创建数据的时候默认执行了. 但是这个工具tool/manage ...

  5. docker 搭建minio

    minio为开源的高可用分部署对象存储服务组件,已经提供了分布式部署的解决方案,实现高可靠.高可用的资源存储,MinIO以极简主义为指导进行设计,追求极致的维护精简性和卓越的读写性能表现. -dock ...

  6. CCF 201912-2 回收站选址

    #include <iostream> #include <bits/stdc++.h> #include <string> using namespace std ...

  7. pip国内镜像永久

    一.Windows下永久设置pip镜像使用:# windows系统使用cmd(最好使用管理员权限运行)快速设置 pip install pip -U # 升级pip到最新版本 pip config s ...

  8. vmhost永久免费主机搭建wordpress

    vmhost主机试用+worpress搭建 点击vmhost进入vmhost官网,vmhost提供了永久免费的主机,还附带一个三级域名,并且支自定义子域名,免费托管5G的网页空间,网页支持php语言, ...

  9. springboot启动日志:Multiple Spring Data modules found, entering strict repository configuration mode

    问题描述 最近启动springboot项目的时候,发现有一条日志:Multiple Spring Data modules found, entering strict repository conf ...

  10. php 常用工具函数

    返回时间戳差值部分,年.月.日 function get_date_diff($startstamp, $endstamp, $return = 'm') { $y = date('Y', $ends ...