meliorence / meliorence/react-native-snap-carousel
Infinite rendering problem when loop={true} && loopClonesPerSide={4} && data.length === 2
まだ誰も着手していません。
- 主要言語
- JavaScript
- スター
- 10.5k
- フォーク
- 2.3k
- PR マージ指標
- 30日以内にマージされた PR はありません
説明
Description
This is a bug report, reproducible both on Android and iOS.
When loop={true} and loopClonesPerSide={4}, it triggers infinite rendering problem when the data length is exactly equal to 2.
I did not observe this behavior on any other values of the above parameters.
Library Version
"react-native-snap-carousel": "3.8.4"
React-native Info
System:
OS: macOS 10.15.3
CPU: (8) x64 Intel(R) Core(TM) i5-8259U CPU @ 2.30GHz
Memory: 125.14 MB / 16.00 GB
Shell: 5.7.1 - /bin/zsh
Binaries:
Node: 11.13.0 - ~/.nvm/versions/node/v11.13.0/bin/node
Yarn: 1.21.1 - /usr/local/bin/yarn
npm: 6.11.2 - ~/.nvm/versions/node/v11.13.0/bin/npm
Watchman: 4.9.0 - /usr/local/bin/watchman
SDKs:
iOS SDK:
Platforms: iOS 13.2, DriverKit 19.0, macOS 10.15, tvOS 13.2, watchOS 6.1
Android SDK:
Android NDK: 21.0.6113669
IDEs:
Android Studio: 3.4 AI-183.6156.11.34.5522156
Xcode: 11.3.1/11C504 - /usr/bin/xcodebuild
npmPackages:
react-native: 0.61.5 => 0.61.5
npmGlobalPackages:
react-native-cli: 2.0.1
コントリビューションガイド
はじめの一歩
- issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
- 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
- リポジトリをフォークし、ブランチを切って変更します。
- issue 番号を参照したプルリクエストを送ります。
調査の方向性
loop={true}、loopClonesPerSide={4}、データ項目がちょうど2つの構成を使用して、Android と iOS の両方で react-native-snap-carousel 3.8.4 の問題を再現します。この構成から carousel の実装を追跡し、レンダリングが終了しなくなる箇所を特定します。2項目の構成が無限のレンダリングループなしでレンダリングされ、既存の loop の動作が維持されれば完了です。
索引モデルが issue の本文から書いたものです。
評価
- 技術スタック
- javascript, react-native
- 領域
- mobile
- issue の種類
- バグ
- 難易度
- 3/5
- 見積もり時間
- 1〜2日
- 活発さ
- 停滞
- 明瞭さ
- おおむね明確
- 初心者へのやさしさ
- 35/100