Skip to content

bug: refresher triggers when scrolling up on custom scroll host #25318

Closed
@TimGels

Description

@TimGels

Prerequisites

Ionic Framework Version

  • v4.x
  • v5.x
  • v6.x
  • Nightly

Current Behavior

When using the <ion-refresher-content> component in combination with Angular's <cdk-virtual-scroll-viewport> component, the refresher gets triggered when scrolling in the list. I also added the ion-content-scroll-host class to the <cdk-virtual-scroll-viewport> component to no avail.

2022-05-19.12-35-14.mp4

Expected Behavior

When using the <ion-refresher-content> component in combination with Angular's <cdk-virtual-scroll-viewport> component, the refresher should only be triggered when pulling at the start of the list.

Steps to Reproduce

  1. Run the repro Ionic application
  2. Put the screen in responsive mode like a phone screen
  3. Scroll down
  4. Scroll up without immediately releasing the mouse down / finger off the screen

Code Reproduction URL

https://github.com/TimGels/ionic-virtual-scroll-refresher-repro

Ionic Info

PS C:\Users\user\projects\ionic-virtual-scroll-refresher-repro> ionic info
[WARN] Error loading @capacitor/ios package.json: Error: Cannot find module '@capacitor/ios/package'

   Require stack:
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\lib\project\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\lib\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\bin\ionic

[WARN] Error loading @capacitor/android package.json: Error: Cannot find module '@capacitor/android/package'

   Require stack:
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\lib\project\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\lib\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\index.js
   - C:\Users\user\AppData\Roaming\npm\node_modules\@ionic\cli\bin\ionic

Ionic:

Ionic CLI : 6.18.2 (C:\Users\user\AppData\Roaming\npm\node_modules@ionic\cli)
Ionic Framework : @ionic/angular 6.1.6
@angular-devkit/build-angular : 13.2.6
@angular-devkit/schematics : 13.2.6
@angular/cli : 13.2.6
@ionic/angular-toolkit : 6.1.0

Capacitor:

Capacitor CLI : 3.5.1
@capacitor/android : not installed
@capacitor/core : 3.5.1
@capacitor/ios : not installed

Utility:

cordova-res : not installed globally
native-run : 1.6.0

System:

NodeJS : v16.14.0 (C:\Program Files\nodejs\node.exe)
npm : 8.3.1
OS : Windows 10

Additional Information

I followed the docs on the implementation of the virtual scrolling.

A related issue that I came across #23437

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions