Files
fuel-price/.agents/skills/vueuse-functions/references/useNProgress.md
Ovidiu U 4a3ce4cc1d
Some checks failed
linter / quality (push) Has been cancelled
tests / ci (8.3) (push) Has been cancelled
tests / ci (8.4) (push) Has been cancelled
tests / ci (8.5) (push) Has been cancelled
docs: add advanced skills for Vitest, Pinia, and Vue built-ins
Add comprehensive reference documentation for:
- Vitest: environments, projects/workspaces, type testing, vi utilities
- Pinia: HMR, Nuxt integration, SSR setup
- Vue: built-in components (Transition, Teleport, Suspense, KeepAlive) and advanced directives
2026-04-11 16:28:36 +01:00

79 lines
1.7 KiB
Markdown

---
category: '@Integrations'
---
# useNProgress
Reactive wrapper for [`nprogress`](https://github.com/rstacruz/nprogress).
## Install
```bash
npm i nprogress@^0
```
## Usage
```ts {6}
import { useNProgress } from '@vueuse/integrations/useNProgress'
const { isLoading } = useNProgress()
function toggle() {
isLoading.value = !isLoading.value
}
```
### Passing a progress percentage
You can pass a percentage to indicate where the bar should start from.
```ts {3}
import { useNProgress } from '@vueuse/integrations/useNProgress'
const { progress } = useNProgress(0.5)
function done() {
progress.value = 1.0
}
```
> To change the progress percentage, set `progress.value = n`, where n is a number between 0..1.
### Customization
Just edit [nprogress.css](https://github.com/rstacruz/nprogress/blob/master/nprogress.css) to your liking. Tip: you probably only want to find and replace occurrences of #29d.
You can [configure](https://github.com/rstacruz/nprogress#configuration) it by passing an object as a second parameter.
```ts {4}
import { useNProgress } from '@vueuse/integrations/useNProgress'
useNProgress(null, {
minimum: 0.1,
// ...
})
```
## Type Declarations
```ts
export type UseNProgressOptions = Partial<NProgressOptions>
export interface UseNProgressReturn {
isLoading: WritableComputedRef<boolean, boolean>
progress: Ref<number | null | undefined>
start: () => NProgress
done: (force?: boolean) => NProgress
remove: () => void
}
/**
* Reactive progress bar.
*
* @see https://vueuse.org/useNProgress
*/
export declare function useNProgress(
currentProgress?: MaybeRefOrGetter<number | null | undefined>,
options?: UseNProgressOptions,
): UseNProgressReturn
```