diff --git a/package.json b/package.json index 68b78a8..3b5bd9f 100644 --- a/package.json +++ b/package.json @@ -24,7 +24,6 @@ "codemirror": "^5.65.9", "core-js": "^3.6.5", "dayjs": "^1.11.4", - "default-passive-events": "^2.0.0", "echarts": "^5.3.1", "echarts-liquidfill": "^3.1.0", "element-plus": "^2.2.21", @@ -38,7 +37,6 @@ "path-browserify": "^1.0.1", "path-to-regexp": "^6.2.0", "pinia": "^2.0.21", - "pinia-persistedstate-plugin": "^0.1.0", "pinia-plugin-persistedstate": "^2.1.1", "print-js": "^1.6.0", "sass": "^1.54.0", diff --git a/src/hooks/useWrapComponents.ts b/src/hooks/useWrapComponents.ts new file mode 100644 index 0000000..c2dbdd7 --- /dev/null +++ b/src/hooks/useWrapComponents.ts @@ -0,0 +1,23 @@ +// 自定义name的壳的集合 +import {h} from "vue"; + +const wrapperMap = new Map() + +export const useWrapComponents = (Component,route)=>{ + let wrapper + if (Component) { + const wrapperName = route.name + if (wrapperMap.has(wrapperName)) { + wrapper = wrapperMap.get(wrapperName) + } else { + wrapper = { + name: wrapperName, + render() { + return h("div", {className: "app-main-inner"}, Component) + }, + } + wrapperMap.set(wrapperName, wrapper) + } + return h(wrapper) + } +} diff --git a/src/layout/components/Main/index.vue b/src/layout/components/Main/index.vue index 8a64358..92da0e4 100644 --- a/src/layout/components/Main/index.vue +++ b/src/layout/components/Main/index.vue @@ -1,25 +1,24 @@