React函数式组件修改参数值并立即使用之useRef

1,087 阅读1分钟

说明:react中需要对定义的值进行修改,并在修改完成后其它地方直接使用。

import {useState, useRef} from 'react';
const a = useRef();
a.current = 3;

# 使用
getdata = async () => {
    list({
        id: a.current
    })
}

说明:react需要更新定义的初始值,并计时更新视图。

const [data, setdata] = useState<any>({});

getdata = async () => {
    setTimeout(()=>{
        const res = {
            a: 1,
            b: 2
        }
        setdata(res)
    },2000)
}

return (
    <>
        <div>{data.a}</div>
    </>
)

补充说明

  • useRef: 可以修改定义的值,并打印最新的值,但是视图无法及时更新。
  • useState: 可以更新视图,但是无法立即打印更新的值,打印的是上一次的值。