The <NuxtLoadingIndicator> component displays a progress bar on page navigation.


Basic Usage

Add <NuxtLoadingIndicator/> in your app.vue or layouts.

<NuxtLoadingIndicator /> <!-- here -->
<NuxtPage />
Open on StackBlitz

If you are changing layouts as well as page, the page transition you set here will not run. Instead, you should set a layout transition.


You can pass custom HTML or components through the loading indicator's default slot.


  • color: The color of the loading bar. It can be set to false to turn off explicit color styling.
  • height: Height of the loading bar, in pixels (default 3).
  • duration: Duration of the loading bar, in milliseconds (default 2000).
  • throttle: Throttle the appearing and hiding, in milliseconds (default 200).

This component is completely optional. To achieve full customization, you can implement your own one based on this file.