React的useEffect,useState使用方式

F1.tsx

import { useEffect,useState } from "react"

const F1 = ()=>{
    // useState,第一个是给值,第二个是操作该值的对应函数
    const [key, setkey] = useState(0)
    const [val, setval] = useState(0)
    const changeKey = ()=>{
        setkey(key => key+1)
    }
    const changeVal = ()=>{
        setval(val => val+1)
    }
    

    // useEffect钩子函数,
    //      第一个参数传函数,
    //      第二个可选参数是个数组类型
    //              不传,则监控全局useState值,任何一个useState值发生变化则执行该函数
    //              传了,则监控该数组中的useState值,数组中的值发现变化则执行第一个参数的函数
    useEffect(()=>{
        console.log("监控全局。。。")
    })
    // 第二个参数是个数组,监控数组中的数据是否变化,变化则执行第一个参数的函数
    useEffect(()=>{
        console.log("监控键,键更新...")
    },[key])
    useEffect(()=>{
        console.log("监控值,值更新...")
    },[val])
    // 上面两个钩子函数可以写成下面这种方式
    // useEffect(()=>{
    //     console.log("监控值,值更新...")
    // },[key,val])
    return(
        <div>
            <div id="div">
                鍵索引:{key},值索引:{val}
            </div>
            <button id="btn" onClick={changeKey}>鍵索引+1</button>
            <button id="btn" onClick={changeVal}>值索引+1</button>
      </div>
    )
}

export default F1;

F2.jsx

import {useRef} from "react"

const F2 = ()=>{
    const inp = useRef(null);
    const show = ()=>{
        console.log(inp.current.value)
    }


    return(
        <div>
            <input ref={inp} type='text' placeholder="请输入..."/>
            <button className="btn" onClick={show}>点击弹出输入数据...</button>
        </div>
    )
}

export default F2;

在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值