Ver Código Fonte

调整目录显示

huwhois 5 anos atrás
pai
commit
135e22ff84

+ 5 - 5
src/router/index.js

171
    } else if (menuList[i].url && /\S/.test(menuList[i].url)) {
171
    } else if (menuList[i].url && /\S/.test(menuList[i].url)) {
172
      menuList[i].url = menuList[i].url.replace(/^\//, '')
172
      menuList[i].url = menuList[i].url.replace(/^\//, '')
173
      var route = {
173
      var route = {
174
        path: addMeetingId(menuList[i].url.replace('/', '-'), menuList[i].parentId),
174
        path: addMeetingId(menuList[i].url.replace('/', '-'), menuList[i].me),
175
        component: null,
175
        component: null,
176
        name: addMeetingId(menuList[i].url.replace('/', '-'), menuList[i].parentId),
176
        name: addMeetingId(menuList[i].url.replace('/', '-'), menuList[i].me),
177
        meta: {
177
        meta: {
178
          menuId: menuList[i].menuId,
178
          menuId: menuList[i].menuId,
179
          title: menuList[i].name,
179
          title: menuList[i].name,
180
          isDynamic: true,
180
          isDynamic: true,
181
          isTab: menuList[i].isTab,
181
          isTab: false,
182
          iframeUrl: ''
182
          iframeUrl: ''
183
        }
183
        }
184
      }
184
      }
213
  }
213
  }
214
}
214
}
215
215
216
function addMeetingId (url, parentId) {
216
function addMeetingId (url, me) {
217
  // console.log(url)
217
  // console.log(url)
218
  if (parentId === 76) {
218
  if (me === 1) {
219
    url += '/:id'
219
    url += '/:id'
220
  }
220
  }
221
  return url
221
  return url

+ 0 - 14
src/views/main-sidebar-sub-menu.vue

12
        :key="item.menuId"
12
        :key="item.menuId"
13
        :menu="item"
13
        :menu="item"
14
        :dynamicMenuRoutes="dynamicMenuRoutes"
14
        :dynamicMenuRoutes="dynamicMenuRoutes"
15
        v-if="item.me!=0 || meetingId!=0"  
16
      >
15
      >
17
    </sub-menu>
16
    </sub-menu>
18
    </template>
17
    </template>
26
<script>
25
<script>
27
  import SubMenu from './main-sidebar-sub-menu'
26
  import SubMenu from './main-sidebar-sub-menu'
28
  export default {
27
  export default {
29
    data () {
30
      return {
31
        meetingId: 0
32
      }
33
    },
34
    name: 'sub-menu',
28
    name: 'sub-menu',
35
    props: {
29
    props: {
36
      menu: {
30
      menu: {
50
        get () { return this.$store.state.common.sidebarLayoutSkin }
44
        get () { return this.$store.state.common.sidebarLayoutSkin }
51
      }
45
      }
52
    },
46
    },
53
    watch: {
54
      '$route' (to, from) {
55
        // 对路由变化作出响应...
56
        // console.log(this.$route.params)
57
        this.meetingId = this.$route.params.hasOwnProperty('id') ? this.$route.params.id :0
58
        console.log(this.meetingId)
59
      }
60
    },
61
    methods: {
47
    methods: {
62
      // 通过menuId与动态(菜单)路由进行匹配跳转至指定路由
48
      // 通过menuId与动态(菜单)路由进行匹配跳转至指定路由
63
      gotoRouteHandle (menu) {
49
      gotoRouteHandle (menu) {

+ 39 - 3
src/views/main-sidebar.vue

28
          v-for="menu in menuList"
28
          v-for="menu in menuList"
29
          :key="menu.menuId"
29
          :key="menu.menuId"
30
          :menu="menu"
30
          :menu="menu"
31
          :dynamicMenuRoutes="dynamicMenuRoutes">
31
          :dynamicMenuRoutes="dynamicMenuRoutes"
32
          :meetindId="meetingId">
32
        </sub-menu>
33
        </sub-menu>
33
      </el-menu>
34
      </el-menu>
34
    </div>
35
    </div>
41
  export default {
42
  export default {
42
    data () {
43
    data () {
43
      return {
44
      return {
44
        dynamicMenuRoutes: []
45
        dynamicMenuRoutes: [],
46
        meetingId: 0
45
      }
47
      }
46
    },
48
    },
47
    components: {
49
    components: {
73
    },
75
    },
74
    watch: {
76
    watch: {
75
      $route: 'routeHandle'
77
      $route: 'routeHandle'
78
      // '$route' (to, from) {
79
      //   // 对路由变化作出响应...
80
      //   // console.log(this.$route.params)
81
      //   this.meetingId = this.$route.params.hasOwnProperty('id') ? this.$route.params.id : 0
82
      //   console.log(this.meetingId)
83
      // }
76
    },
84
    },
77
    created () {
85
    created () {
78
      this.menuList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
86
      // console.log(JSON.parse(sessionStorage.getItem('menuList') || '[]'))
87
      let mList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
88
      let myList = []
89
      mList.forEach(element => {
90
        if (element.me === 0) {
91
          myList.push(element)
92
        }
93
      })
94
      // this.menuList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
95
      this.menuList = myList
79
      this.dynamicMenuRoutes = JSON.parse(sessionStorage.getItem('dynamicMenuRoutes') || '[]')
96
      this.dynamicMenuRoutes = JSON.parse(sessionStorage.getItem('dynamicMenuRoutes') || '[]')
97
      console.log(this.$route)
80
      this.routeHandle(this.$route)
98
      this.routeHandle(this.$route)
81
    },
99
    },
82
    methods: {
100
    methods: {
83
      // 路由操作
101
      // 路由操作
84
      routeHandle (route) {
102
      routeHandle (route) {
103
        console.log(this.meetingId + '103')
104
        this.meetingId = this.$route.params.hasOwnProperty('id') ? this.$route.params.id : 0
105
        console.log(this.meetingId + '105')
106
        if (this.meetingId !== 0) {
107
          this.menuList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
108
          console.log(this.menuList)
109
        } else {
110
          let mList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
111
          let myList = []
112
          mList.forEach(element => {
113
            if (element.me === 0) {
114
              myList.push(element)
115
            }
116
          })
117
          console.log(myList)
118
          // this.menuList = JSON.parse(sessionStorage.getItem('menuList') || '[]')
119
          this.menuList = myList
120
        }
85
        if (route.meta.isTab) {
121
        if (route.meta.isTab) {
86
          // tab选中, 不存在先添加
122
          // tab选中, 不存在先添加
87
          var tab = this.mainTabs.filter(item => item.name === route.name)[0]
123
          var tab = this.mainTabs.filter(item => item.name === route.name)[0]