123456789101112131415161718192021222324252627282930313233 |
- import { useCssVar } from '@vueuse/core'
- import type { NProgressOptions } from 'nprogress'
- import NProgress from 'nprogress'
- import 'nprogress/nprogress.css'
- const primaryColor = useCssVar('--el-color-primary', document.documentElement)
- export const useNProgress = () => {
- NProgress.configure({ showSpinner: false } as NProgressOptions)
- const initColor = async () => {
- await nextTick()
- const bar = document.getElementById('nprogress')?.getElementsByClassName('bar')[0] as ElRef
- if (bar) {
- bar.style.background = unref(primaryColor.value)
- }
- }
- initColor()
- const start = () => {
- NProgress.start()
- }
- const done = () => {
- NProgress.done()
- }
- return {
- start,
- done
- }
- }
|