【问题标题】:Initialize const value with useCallback使用 useCallback 初始化 const 值
【发布时间】:2021-06-19 13:30:10
【问题描述】:

最近我研究了一些用函数初始化 const 的代码,有些像这样:

const myConst = myFn();

“问题”是这个函数将在每次渲染中调用,并且在组件中发生了很多,为了防止这种情况我可以将 const 更改为状态并使用 useEffect,但现在我想知道我是否可以使用 useCallback 钩子,如下所示:

const [myState] = useState(useCallback(() => myFn(), []))

记录 myFn() 只调用一次,但我不确定这样做是否可行,或者这是否真的有助于提高性能。

我们将不胜感激任何建议。

【问题讨论】:

  • 澄清一下,它不会用函数初始化 const。它用 myFn() 的返回值初始化 const。

标签: javascript reactjs react-hooks


【解决方案1】:

您正在寻找useMemo

const value = useMemo(() => { 
                         ..some computation 
                         return result; 
                       }, []);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-02-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多