diff --git a/package-lock.json b/package-lock.json index 12048ef98..4d463a54f 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11138,6 +11138,11 @@ "set-blocking": "2.0.0" } }, + "nprogress": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/nprogress/-/nprogress-0.2.0.tgz", + "integrity": "sha1-y480xTIT2JVyP8urkH6UIq28r7E=" + }, "nth-check": { "version": "1.0.1", "resolved": "http://registry.npm.taobao.org/nth-check/download/nth-check-1.0.1.tgz", diff --git a/package.json b/package.json index 631da2a2d..1fd7a8c69 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "d2-admin", - "version": "1.3.0", + "version": "1.4.1", "private": true, "scripts": { "serve": "vue-cli-service serve --open", @@ -31,6 +31,7 @@ "lowdb": "^1.0.0", "marked": "^0.3.9", "mockjs": "^1.0.1-beta3", + "nprogress": "^0.2.0", "papaparse": "^4.3.6", "particles.js": "^2.0.0", "quill": "^1.3.4", diff --git a/src/assets/style/fixed/n-progress.scss b/src/assets/style/fixed/n-progress.scss new file mode 100644 index 000000000..2de5618db --- /dev/null +++ b/src/assets/style/fixed/n-progress.scss @@ -0,0 +1,8 @@ +#nprogress { + .bar { + background: $color-primary !important; + } + .peg { + box-shadow: 0 0 10px $color-primary, 0 0 5px $color-primary !important; + } +} \ No newline at end of file diff --git a/src/assets/style/public-class.scss b/src/assets/style/public-class.scss index 69e93d71c..dc41e4e6c 100644 --- a/src/assets/style/public-class.scss +++ b/src/assets/style/public-class.scss @@ -6,6 +6,8 @@ @import '~@/assets/style/fixed/element.scss'; // 补丁 markdown @import '~@/assets/style/fixed/markdown.scss'; +// 补丁 n-progress +@import '~@/assets/style/fixed/n-progress.scss'; // 补丁 vue-splitpane @import '~@/assets/style/fixed/vue-splitpane.scss'; // 补丁 vue-grid-layout diff --git a/src/router/index.js b/src/router/index.js index 32712ec35..244d44db8 100755 --- a/src/router/index.js +++ b/src/router/index.js @@ -1,6 +1,10 @@ import Vue from 'vue' import VueRouter from 'vue-router' +// 进度条 +import NProgress from 'nprogress' +import 'nprogress/nprogress.css' + import store from '@/store/index' import util from '@/libs/util.js' @@ -20,6 +24,8 @@ const router = new VueRouter({ * 权限验证 */ router.beforeEach((to, from, next) => { + // 进度条 + NProgress.start() // 关闭搜索面板 store.commit('d2admin/search/set', false) // 验证当前路由所有的匹配中是否需要有登录验证的 @@ -45,6 +51,8 @@ router.beforeEach((to, from, next) => { }) router.afterEach(to => { + // 进度条 + NProgress.done() // 需要的信息 const app = router.app const { name, params, query } = to