react / react/react-native

FlatList children sometimes stop responding to taps when using pull-to-refresh

Đang mở
#48,804 7 bình luận 1 reaction 0 người được giao Xem trên GitHub

Chưa có ai nhận issue này.

Component: FlatList Issue: Author Provided Repro
Ngôn ngữ chính
C++
Star
127k
Fork
25.3k
Merge trung bình
1 ngày 23 giờ
Pull request đã merge (30 ngày)
4

Mô tả

Description

When performing a FlatList pull-to-refresh shortly after a regular scroll up, the contents of the list sometimes become completely unresponsive to taps. When that happens, a slight scroll down immediately fixes the issue,

Steps to reproduce
  1. Scroll to the top of the list
  2. Scroll down slightly so there's room for the next maneuver
  3. Do a gentle scroll up, and while the scroll still has momentum and you are near the top of the list, do another scroll up to engage the pull-to-refresh (you don't need to actually trigger a refresh but the bug remains even if you do)
  4. After you release the gesture, the buttons in the list are unresponsive to taps until you perform a scroll down again
React Native Version

0.76.6

Affected Platforms

Runtime - Android

Output of npx react-native info
System:
  OS: Windows 11 10.0.22631
  CPU: "(12) x64 AMD Ryzen 5 5600H with Radeon Graphics         "
  Memory: 2.94 GB / 13.86 GB
Binaries:
  Node:
    version: 22.12.0
    path: C:\nvm4w\nodejs\node.EXE
  Yarn:
    version: 1.22.22
    path: C:\nvm4w\nodejs\yarn.CMD
  npm:
    version: 10.9.0
    path: C:\nvm4w\nodejs\npm.CMD
  Watchman:
    version: 20241222.093427.0
    path: C:\ProgramData\chocolatey\bin\watchman.EXE
SDKs:
  Android SDK:
    API Levels:
      - "31"
      - "33"
      - "34"
      - "35"
    Build Tools:
      - 30.0.3
      - 33.0.1
      - 34.0.0
      - 35.0.0
    System Images:
      - android-34 | Google Play Intel x86_64 Atom
    Android NDK: Not Found
  Windows SDK:
    AllowDevelopmentWithoutDevLicense: Enabled
    AllowAllTrustedApps: Disabled
    Versions:
      - 10.0.19041.0
      - 10.0.22000.0
      - 10.0.22621.0
IDEs:
  Android Studio: AI-242.23726.103.2422.12816248
  Visual Studio:
    - 17.12.35527.113 (Visual Studio Community 2022)
Languages:
  Java:
    version: 17.0.13
    path: C:\Program Files\Microsoft\jdk-17.0.13.11-hotspot\bin\javac.EXE
  Ruby:
    version: 3.2.1
    path: C:\Ruby32-x64\bin\ruby.EXE
npmPackages:
  "@react-native-community/cli":
    installed: 15.1.3
    wanted: ^15.1.3
  react:
    installed: 18.3.1
    wanted: 18.3.1
  react-native:
    installed: 0.76.6
    wanted: ^0.76.6
  react-native-windows: Not Found
npmGlobalPackages:
  "*react-native*": Not Found
Android:
  hermesEnabled: true
  newArchEnabled: true
iOS:
  hermesEnabled: Not found
  newArchEnabled: Not found
Stacktrace or Logs
N/A
Reproducer

https://snack.expo.dev/@the_cetus/thankful-orange-kiwi

Screenshots and Videos

https://github.com/user-attachments/assets/5ccada90-67ef-42a3-90d3-7be33df7db47

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Bắt đầu từ đâu

  1. Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
  2. Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
  3. Fork repository và làm thay đổi trên một nhánh.
  4. Mở pull request có tham chiếu số hiệu của issue.

Hướng nghiên cứu

Bắt đầu bằng cách chạy trình tái hiện Snack được liên kết trên Android và thực hiện theo chuỗi cử chỉ pull-to-refresh được liệt kê xung quanh FlatList. Xác nhận rằng các lần chạm vào phần tử con ngừng phản hồi cho đến khi cuộn nhẹ xuống dưới, sau đó dùng hành vi này làm tiêu chí hoàn thành cho bản sửa lỗi.

Do mô hình lập chỉ mục viết ra từ nội dung của issue.

Đánh giá

Công nghệ
android, javascript, react-native
Lĩnh vực
mobile
Loại issue
Lỗi
Độ khó
4/5
Thời gian dự kiến
3-5 ngày
Mức độ hoạt động
Đình trệ
Độ rõ ràng
Khá rõ ràng
Mức phù hợp với người mới
35/100

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.