ZaiZai 1 jaar geleden
bovenliggende
commit
34129ec962
3 gewijzigde bestanden met toevoegingen van 17 en 25 verwijderingen
  1. 5 7
      src/router/routers.js
  2. 6 6
      src/store/index.js
  3. 6 12
      src/views/project/middle.vue

+ 5 - 7
src/router/routers.js

@@ -1,11 +1,7 @@
-import pinia from '~src/store/init'
-import { useAppStore } from '~src/store'
-import { getStore } from 'hc-vue3-ui'
+import { getStore, setStore } from 'hc-vue3-ui'
 import { deepClone, getArrValue, isNullES } from 'js-fast-way'
 import testMenu from './modules/menu'
 
-const store = useAppStore(pinia)
-
 //获取路由菜单
 export const getRouterData = async (toName) => {
     const routes = getArrValue(getStore('routes'))
@@ -14,14 +10,16 @@ export const getRouterData = async (toName) => {
 
 //获取菜单数据
 export const getMenuData = async () => {
-    let projectMenu = []
+    let projectMenu = [], menu = getStore('projectMenu')
     for (let i = 0; i < testMenu.length; i++) {
         if (testMenu[i].code === 'project') {
             projectMenu = await getProjectChildren(testMenu[i].children)
             break
         }
     }
-    store.setProjectMenu(projectMenu || [])
+    if (isNullES(menu) || menu.length <= 0) {
+        setStore('projectMenu', projectMenu)
+    }
     return testMenu
 }
 

+ 6 - 6
src/store/index.js

@@ -7,10 +7,15 @@ export const useAppStore = defineStore('main', {
         userInfo: getStore('userInfo') || {},
         //菜单信息
         menus: getStore('menus') || [],
-        projectMenu: getStore('projectMenu') || [],
         home: getStore('home') || 'anomaly-invest',
         buttons: getStore('buttons') || {},
     }),
+    getters: {
+        getUserInfo: state => state.userInfo,
+        getMenus: state => state.menus,
+        getHome: state => state.home,
+        getButtons: state => state.buttons,
+    },
     actions: {
         //用户信息
         setUserInfo(value) {
@@ -22,10 +27,6 @@ export const useAppStore = defineStore('main', {
             this.menus = value
             setStore('menus', value)
         },
-        setProjectMenu(value) {
-            this.projectMenu = value
-            setStore('projectMenu', value)
-        },
         setButtons(value) {
             this.buttons = value
             setStore('buttons', value)
@@ -41,7 +42,6 @@ export const useAppStore = defineStore('main', {
         clearStoreData() {
             this.userInfo = null
             this.menus = null
-            this.projectMenu = null
             this.buttons = null
             //清除缓存
             clearStoreAll()

+ 6 - 12
src/views/project/middle.vue

@@ -18,10 +18,10 @@
 </template>
 
 <script setup>
-import { onMounted, ref, watch } from 'vue'
-import { useAppStore } from '~src/store'
+import { onMounted, ref } from 'vue'
 import { useRoute, useRouter } from 'vue-router'
 import { isArray, isNullES } from 'js-fast-way'
+import { getStore } from 'hc-vue3-ui'
 
 //子组件
 import HcMenuBar from '~src/layout/modules/MenuBar.vue'
@@ -30,20 +30,14 @@ import AdminListe from './admin/list.vue'
 import GistCreate from './gist/create.vue'
 import GistListe from './gist/list.vue'
 
+
 //初始化
 const router = useRouter()
 const useRoutes = useRoute()
-const store = useAppStore()
 
 //渲染完成
 onMounted(() => {
-    getMenuDataKey(store.projectMenu)
-})
-
-//监听菜单变化
-watch(() => store.projectMenu, (menu) => {
-    console.log(menu)
-    getMenuDataKey(menu)
+    getMenuDataKey()
 })
 
 //左侧菜单
@@ -60,8 +54,8 @@ const menuChange = ({ code }) => {
 }
 
 //获取菜单数据
-const getMenuDataKey = async (menu) => {
-    console.log(menu)
+const getMenuDataKey = async () => {
+    const menu = getStore('projectMenu')
     if (!isArray(menu)) return
     //获取当前左侧菜单
     menuData.value = menu