web-dev-qa-db-ja.com

useMemoまたはuseCallbackとuseRefの空の依存関係

これで GitHubの問題 基本的に変更を提案しました:

x = useCallback( ... , []);

に:

x = useRef( ... ).current;

2つは同じですが、useRef Reactでは、依存関係は比較されません。

質問に対して返信が来ました:

依存関係のないuseMemoまたはuseCallbackがuseRefよりも良い選択になる状況はありますか?

考えられませんが、いくつかのユースケースを見落としていたかもしれません。

だから誰もがそのような状況を考えることができますか?

9
Izhaki

なぜなら、useRef(()=> {...})。currentの出力は変更可能だからです。

これは、コードに奇妙な副作用を引き起こす可能性があります。電流の値はいつでも変更できます。 https://codesandbox.io/s/confident-monad-vjeuw

これは、useRefを使用したくない場合のユースケースです。

0
Daniel Duong