useNProgress
Reactive wrapper for nprogress
.
Demo
Click to change progress status
Install
bash
npm i nprogress
npm i nprogress
Usage
js
import { useNProgress } from '@vueuse/integrations/useNProgress'
const { isLoading } = useNProgress()
function toggle() {
isLoading.value = !isLoading.value
}
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.
js
import { useNProgress } from '@vueuse/integrations/useNProgress'
const { progress } = useNProgress(0.5)
function done() {
progress.value = 1.0
}
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 to your liking. Tip: you probably only want to find and replace occurrences of #29d.
You can configure it by passing an object as a second parameter.
js
import { useNProgress } from '@vueuse/integrations/useNProgress'
useNProgress(null, {
minimum: 0.1,
// ...
})
import { useNProgress } from '@vueuse/integrations/useNProgress'
useNProgress(null, {
minimum: 0.1,
// ...
})
Type Declarations
typescript
export type UseNProgressOptions = Partial<NProgressOptions>
/**
* Reactive progress bar.
*
* @see https://vueuse.org/useNProgress
*/
export declare function useNProgress(
currentProgress?: MaybeComputedRef<number | null | undefined>,
options?: UseNProgressOptions
): {
isLoading: WritableComputedRef<boolean>
progress: Ref<number | (() => number | null | undefined) | null | undefined>
start: () => nprogress.NProgress
done: (force?: boolean | undefined) => nprogress.NProgress
remove: () => void
}
export type UseNProgressReturn = ReturnType<typeof useNProgress>
export type UseNProgressOptions = Partial<NProgressOptions>
/**
* Reactive progress bar.
*
* @see https://vueuse.org/useNProgress
*/
export declare function useNProgress(
currentProgress?: MaybeComputedRef<number | null | undefined>,
options?: UseNProgressOptions
): {
isLoading: WritableComputedRef<boolean>
progress: Ref<number | (() => number | null | undefined) | null | undefined>
start: () => nprogress.NProgress
done: (force?: boolean | undefined) => nprogress.NProgress
remove: () => void
}
export type UseNProgressReturn = ReturnType<typeof useNProgress>
Source
Contributors
Anthony Fu
Antério Vieira
丶远方
Agénor Debriat
webfansplz
Curt Grimes
Jelf
Michael Hüneburg
Alex Kozack