setValue的值,监听的是num的值,为什么useCallBack里输出两遍

来源:3-5 组件跟随状态更新——useCallback

慕虎6051845

2022-06-18 11:04

import React, { useCallback, useEffect, useLayoutEffect, useMemo, useState} from "react";

let set = new Set()


function StateFunction() {

    const [value, setValue] = useState(100)

    const [num, setNum] = useState(1)


   const getNumberCallBack = useCallback(function() {

        console.log('num值不变===', num, num*2)  // 输出了两遍

        return num * 2

    }, [num])

    set.add(getNumberCallBack)

    console.log('set=====', set.size, set)

    return <div onClick={() => setValue(value + 1)}>

        这是一个函数组件----

        {'getNumberCallBack====' + getNumberCallBack()}

    </div>



http://img1.mukewang.com/62ad40af00015b6e21160944.jpg


写回答 关注

0回答

还没有人回答问题,可以看看其他问题

React Hooks2小时快速入门

React Hooks 入门的不二之选

2715 学习 · 22 问题

查看课程

相似问题