問題タブ [usecallback]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
reactjs - useCallback / useMemoの再計算を引き起こす依存関係を取得する方法は?
useMemo
React で/フックを使用すると、 /戻り値useCallback
が原因で予期しないレンダリングが発生することがあります。useMemo
useCallback
React.memo
React関数コンポーネントの無用なレンダリングを減らすために使用するため、 React.memo
2番目のパラメーターによって、比較を制御できました。また、現在のレンダーを引き起こすプロップを取得できます。後のように:
以前のように依存関係の原因useCallback
/useMemo
再計算または React devtools を取得できますか?
javascript - useCallback フックが古い状態値を取得し、更新しない
何度も呼び出した後、同じ状態を返すコールバック
私はreactクラスのフックに反応するのが初めてです。shouldcomponentupdateを使用して、この問題を解決できたはずです
しかし、使用中のパラメーターはありませんコールバックフック
どうすればこの問題を解決できますか? 公式ドキュメントを読みましたが、関連する問題は見つかりませんでした
reactjs - ReactJSで小道具としてコールバックを使用して再レンダリングを防ぐ方法は?
このチュートリアルのコードを TypeScript でリファクタリングすることで、ReactJS の新しいフック機能を練習しています。
親コンポーネントから子コンポーネントにコールバックを渡し、クリック ボタン イベントで実行する必要がある props をスローしました。
私の問題は次のとおりです。ゲームに勝ったときに、1 回ではなく2 回表示される警告ダイアログがあります。これはコンポーネントの再レンダリングが原因であると想定したため、フックを使用してコールバックをメモしました。問題は、アラート ダイアログがまだ 2 回表示されることです。useCallback
handleClickOnSquare
再レンダリングに関連する何かが欠けていると思いますが、誰かがこの動作を引き起こす可能性のある考えを持っていますか?
これが私のコードです:
ゲーム.tsx
types.d.ts
ありがとう