Skip to page content

Pull to refresh

The QPullToRefresh is a component that allows the user to pull down in order to refresh page content (or retrieve the newest content).

Usage

Basic

WARNING

In your @refresh function, don’t forget to call the passed in done() function when you have finished loading more data.

To refresh, pull down (with mouse or through finger touch) on the content below when the inner scroll position is the top.

Basic



Custom icon

Custom coloring

Tips

Scrolling container

Please read here about how Quasar determines the container to attach scrolling events to.

  • If using a QLayout, then it’s recommended that you put QPullToRefresh as direct child of QPage and wrap your page content with it.
  • If you change the parent of this component, don’t forget to call updateScrollTarget() on the QPullToRefresh Vue reference.
  • QPullToRefresh also allows text selection, so if your content also has images, you might want to add draggable="false" to them, otherwise the native browser behavior might interfere in a negative way.

Accessibility
v2.25+

The pull gesture is pointer-only — keyboard and assistive technology users cannot perform it. The component exposes a trigger() method on its ref for exactly this reason: wire it to a visible refresh button so everyone has a way to refresh. The refreshing spinner is not announced to screen readers either, so if completion matters to your users, announce it yourself (e.g. through a live region or a notification) when your @refresh handler finishes.