1.8 KiB
1.8 KiB
category
| category |
|---|
| @Integrations |
useNProgress
Reactive wrapper for nprogress.
Install
npm i nprogress@^0
Usage
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.
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.
import { useNProgress } from '@vueuse/integrations/useNProgress';
useNProgress(null, {
minimum: 0.1,
// ...
});
Type Declarations
export type UseNProgressOptions = Partial<NProgressOptions>;
/**
* Reactive progress bar.
*
* @see https://vueuse.org/useNProgress
*/
export declare function useNProgress(
currentProgress?: MaybeRefOrGetter<number | null | undefined>,
options?: UseNProgressOptions,
): {
isLoading: WritableComputedRef<boolean, boolean>;
progress: Ref<number | null | undefined, number | null | undefined>;
start: () => nprogress.NProgress;
done: (force?: boolean) => nprogress.NProgress;
remove: () => void;
};
export type UseNProgressReturn = ReturnType<typeof useNProgress>;