react hooks

Hooks是什么?

Hooks可以让你在函数组件中使用state以及其他的react特性

三个常用的Hook

State Hook:React.useState()

让函数组件也可以有state状态,并进行状态数据的读写操作

import React from "react"
export default function Functional(){
    // 返回包含2个元素的数组,count默认值0,setCount是更新状态的函数
    const [count,setCount] = React.useState(0)
    const [name,setName] = React.useState('Tom')
    function add(){
        // setCount(count+1) // 第一种写法
        setCount(count=>count+1)
    }
    function changeName(){
        setName('Jack')
    }
    return (
        <div>
            <h2>当前求和为:{count}</h2>
            <h2>我的名字是:{name}</h2>
            <button onClick={add}>点我+1</button>
            <button onClick={changeName}>点我改名字</button>
        </div>
    
    )
}

Effect Hook:React.useEffect()

用于模拟类组件的生命周期钩子

import React from "react"
export default function Functional(){
    // 返回包含2个元素的数组,count默认值0,setCount是更新状态的函数
    const [count,setCount] = React.useState(0)

    // React.useEffect(()=>{
    //     console.log('@')
    // },[count])
    // 相当于类组件中的“组件以及挂载”componentDidMount这个生命周期
    React.useEffect(()=>{
        let timer = setInterval(()=>{
            // setCount(count=>count+1)
        },1000)
        return ()=>{
            clearInterval(timer)
        }
    },[])
    function add(){
        // setCount(count+1) // 第一种写法
        setCount(count=>count+1)
    }
    return (
        <div>
            <h2>当前求和为:{count}</h2>
            <button onClick={add}>点我+1</button>
        </div>
    
    )
}

Ref Hook:React.useRef()

1)Ref Hook可以在函数组件中存储/查找组件内的标签或任意其他数据
2)语法const refContainer = useRef()

import {useRef} from 'react'

const myComponent = () => {
  const elementRef = useRef()
  
  return (
 		<input ref={elementRef} type="text" />
  )
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值