問題タブ [react-native-gesture-handler]
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.
react-native - React Native: react-native-reanimated の useRef による以前のレンダリング時よりも多くのフックをレンダリングしました
私の RN 0.62.2 アプリでは、アニメーション値の宣言が use に変更された後にエラーが発生しますuseRef
。エラーのないコードは次のとおりです。
それは機能的なコンポーネントであり、私は追加されたのドキュメントに従っています:react-native-reanimated
useRef
変更後、上記の行でエラーがスローされます。
以下を試してみましたが、問題は同じです:
試しuseValue
てみましたが、エラーは同じです。上記のリンクのドキュメント以外でのuseRef
使用方法に関する情報はあまりありません。react-native-reanimated
アップデート:
コードが長すぎて面倒です。メソッドdisplayImg
は、親コンポーネントによって定義された領域に単一の画像を表示することです。親コンポーネントに複数の画像 (dateLen > 1) がある場合、表示されるすべての画像displayImg
をドラッグでき、アニメーションが必要になります。useRef
各再レンダリング後にステータスを維持するために使用されています。
reactjs - 状態を設定した後、2 番目のドラッグがアニメーション化されない - React Native、Expo、PanGestureHandler
React Native で reanimated と PanGestureHandler を使用すると、オブジェクトを 1 回ドラッグできますが、ジェスチャー イベントが終了して状態を更新すると、2 番目から N 番目のドラッグ アニメーションが発生しません。もう。
私の実際の Android 9 デバイスでは:
- アプリがロードされた直後にオブジェクトをドラッグできます。オブジェクトをドラッグすると、オブジェクトが指に追従します (正しい動作)
。
- タッチが親コンテナーにバブルアップしますが、これは理想的ではありませんが、この大きな問題が解決された後に対処する必要があります
- 2 回目のドラッグで、指を下ろしている間、オブジェクトがスタックしているように見え、画面から指を離すと、オブジェクトが新しい場所にジャンプします (不正な動作) 。
これは問題を再現するスナックですが、ここで私が実際の Android 9 デバイスで見ている問題は、snack.expo.io で iOS エミュレーションを使用すると発生します: https://snack.expo.io/@aproximation/react-ネイティブドラッグ可能
使用中のライブラリは次のとおりです。
- 反応: 16.11.0
- React ネイティブ: 0.63.2
- React ネイティブ ジェスチャー ハンドラー: 1.6.0
- React Native Reanimated: 1.13.0
- 博覧会: 38.0.10
最後に、React Native Gesture Handler のバグである場合に備えて、ここでも問題を作成しました: https://github.com/software-mansion/react-native-gesture-handler/issues/1194
ありがとうございました!