react useCallback notice

多个不同输入框共用一个方法时使用useCallback:

params = initParams = {code: "code_test", name: "name_test"}

const onInputChange = React.useCallback((e: React.ChangeEvent<HTMLInputElement>) => {
        setParams({
            ...params,
            [e.target.name]: e.target.value
        });
    }, [params]);

useCallback 如果没有写以来state变化参数(如上:params),调用时改变target.value, 设置其他params参数为初始化参数,

改变code为 “1”, 改变name时,设置name为新值,同时code会变为初始值"code_test",而不是为1.

原文地址:https://www.cnblogs.com/Nyan-Workflow-FC/p/12362612.html