diff --git a/.env b/.env index 8fda07b..dacb1a5 100644 --- a/.env +++ b/.env @@ -4,5 +4,5 @@ VITE_PORT = 8888 # open 运行 npm run dev 时自动打开浏览器 VITE_OPEN = false -# public path 配置线上环境路径(打包) +# public path 配置线上环境路径(打包)、本地通过 http-server 访问时,请置空即可 VITE_PUBLIC_PATH = /vue-next-admin-preview/ \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index c3bcfe4..fef12c4 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -2,6 +2,19 @@ 🎉🎉🔥 `vue-next-admin` 基于 vue3.x 、Typescript、vite、Element plus 等,适配手机、平板、pc 的后台开源免费模板库(vue2.x 请切换 vue-prev-admin 分支) +## 1.0.14 + +`2021.07.29` + +- 🌟 更新 依赖更新最新版本(vue、vuex、vue-router),出现问题,请手动降级。版本查看:vnpm +- 🎯 优化 数据可视化图表演示加载卡顿问题、优化有图表的演示界面 +- 🎯 优化 路由参数演示界面 +- 🎯 优化 tagsView 操作演示界面,由于存在相同路由多标签,必须要传全部参数值(query 或者 params) +- 🎉 新增 开启 TagsView 共用,开启时:(多个路由菜单共用一个详情组件(参数为后点击的覆盖前面点击的),tagsView 中只会出现一个(不支持同时出现多个 tagsView 标签))。关闭时:(多个路由菜单共用一个详情组件,参数不同,会同时出现多个 tagsView 标签) +- 🐞 修复 tagsView 共用(单标签)时,右键菜单功能点击,参数不对的问题(第 2n+个参数未覆盖第一个参数值) +- 🐞 修复 多 tagsView 标签(参数不同)、单个 tagsView 标签公用(参数不同)所带来的刷新功能、横向自动滚动等问题 +- 🐞 修复 处理全屏若干问题,pr!12,感谢群友@另一个前端 + ## 1.0.13 `2021.07.25` diff --git a/package.json b/package.json index 29f401d..d6dfd97 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "vue-next-admin", - "version": "1.0.13", + "version": "1.0.14", "scripts": { "dev": "vite", "build": "vite build", @@ -8,12 +8,12 @@ }, "dependencies": { "axios": "^0.21.1", - "countup.js": "^2.0.7", + "countup.js": "^2.0.8", "cropperjs": "^1.5.12", "echarts": "^5.1.2", - "echarts-gl": "^2.0.6", + "echarts-gl": "^2.0.7", "echarts-wordcloud": "^2.0.0", - "element-plus": "^1.0.2-beta.57", + "element-plus": "^1.0.2-beta.65", "mitt": "^3.0.0", "nprogress": "^0.2.0", "print-js": "^1.6.0", @@ -21,34 +21,34 @@ "screenfull": "^5.1.0", "sortablejs": "^1.14.0", "splitpanes": "^3.0.4", - "vue": "^3.0.11", + "vue": "^3.1.5", "vue-clipboard3": "^1.0.1", "vue-grid-layout": "^3.0.0-beta1", "vue-i18n": "^9.1.7", - "vue-router": "^4.0.8", + "vue-router": "^4.0.10", "vue-web-screen-shot": "^1.2.0", - "vuex": "^4.0.1", - "wangeditor": "^4.7.5" + "vuex": "^4.0.2", + "wangeditor": "^4.7.6" }, "devDependencies": { "@types/axios": "^0.14.0", "@types/clipboard": "^2.0.1", - "@types/node": "^16.4.1", + "@types/node": "^16.4.9", "@types/nprogress": "^0.2.0", "@types/sortablejs": "^1.10.7", - "@typescript-eslint/eslint-plugin": "^4.28.4", - "@typescript-eslint/parser": "^4.28.4", - "@vitejs/plugin-vue": "^1.2.5", + "@typescript-eslint/eslint-plugin": "^4.28.5", + "@typescript-eslint/parser": "^4.28.5", + "@vitejs/plugin-vue": "^1.3.0", "@vue/compiler-sfc": "^3.1.5", "dotenv": "^10.0.0", - "eslint": "^7.31.0", - "eslint-plugin-vue": "^7.14.0", + "eslint": "^7.32.0", + "eslint-plugin-vue": "^7.15.0", "prettier": "^2.3.2", - "sass": "^1.36.0", + "sass": "^1.37.0", "sass-loader": "^12.1.0", "typescript": "^4.3.5", - "vite": "^2.4.3", - "vue-eslint-parser": "^7.9.0" + "vite": "^2.4.4", + "vue-eslint-parser": "^7.10.0" }, "browserslist": [ "> 1%", diff --git a/src/App.vue b/src/App.vue index 274b69a..b2fed67 100644 --- a/src/App.vue +++ b/src/App.vue @@ -2,6 +2,7 @@ + + + diff --git a/src/layout/navBars/breadcrumb/setings.vue b/src/layout/navBars/breadcrumb/setings.vue index 2c23532..3aedc83 100644 --- a/src/layout/navBars/breadcrumb/setings.vue +++ b/src/layout/navBars/breadcrumb/setings.vue @@ -207,6 +207,12 @@ +
+
{{ $t('message.layout.fourIsShareTagsView') }}
+
+ +
+
{{ $t('message.layout.fourIsFooter') }}
@@ -476,6 +482,11 @@ export default defineComponent({ proxy.mittBus.emit('openOrCloseSortable'); setLocalThemeConfig(); }; + // 4、界面显示 --> 开启 TagsView 共用 + const onShareTagsViewChange = () => { + proxy.mittBus.emit('openShareTagsView'); + setLocalThemeConfig(); + }; // 4、界面显示 --> 灰色模式/色弱模式 const onAddFilterChange = (attr: string) => { if (attr === 'grayscale') { @@ -654,6 +665,7 @@ export default defineComponent({ onClassicSplitMenuChange, onIsBreadcrumbChange, onSortableTagsViewChange, + onShareTagsViewChange, onCopyConfigClick, }; }, diff --git a/src/layout/navBars/breadcrumb/user.vue b/src/layout/navBars/breadcrumb/user.vue index 93aefc7..9c332af 100644 --- a/src/layout/navBars/breadcrumb/user.vue +++ b/src/layout/navBars/breadcrumb/user.vue @@ -225,31 +225,12 @@ export default { break; } }; - // 阻止F11全屏 - const initOnkeydown = () => { - document.onkeydown = (event) => { - var e = event || window.event || arguments.callee.caller.arguments[0]; - if (e && e.keyCode === 122 && !state.isScreenfull) { - e.preventDefault(); - onScreenfullClick(); - } - }; - }; // 页面加载时 onMounted(() => { - initOnkeydown(); if (Local.get('themeConfig')) { initI18n(); initComponentSize(); } - document.onkeydown = (event) => { - var e = event || window.event || arguments.callee.caller.arguments[0]; - // 阻止F11全屏 - if (e && e.keyCode === 122 && !state.isScreenfull) { - e.preventDefault(); - onScreenfullClick(); - } - }; }); return { getUserInfos, diff --git a/src/layout/navBars/tagsView/contextmenu.vue b/src/layout/navBars/tagsView/contextmenu.vue index d37493c..ef1fec9 100644 --- a/src/layout/navBars/tagsView/contextmenu.vue +++ b/src/layout/navBars/tagsView/contextmenu.vue @@ -46,7 +46,7 @@ export default defineComponent({ icon: 'iconfont icon-fullscreen', }, ], - path: {}, + item: {}, }); // 父级传过来的坐标 x,y 值 const dropdowns = computed(() => { @@ -54,11 +54,11 @@ export default defineComponent({ }); // 当前项菜单点击 const onCurrentContextmenuClick = (id: number) => { - emit('currentContextmenuClick', { id, path: state.path }); + emit('currentContextmenuClick', Object.assign({}, { id }, state.item)); }; // 打开右键菜单:判断是否固定,固定则不显示关闭按钮 const openContextmenu = (item: any) => { - state.path = item.path; + state.item = item; item.meta.isAffix ? (state.dropdownList[1].affix = true) : (state.dropdownList[1].affix = false); closeContextmenu(); setTimeout(() => { diff --git a/src/layout/navBars/tagsView/tagsView.vue b/src/layout/navBars/tagsView/tagsView.vue index 8b8336a..3140f0e 100644 --- a/src/layout/navBars/tagsView/tagsView.vue +++ b/src/layout/navBars/tagsView/tagsView.vue @@ -1,9 +1,5 @@