Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
B
baas3-fe
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
JIRA
JIRA
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
guxukai
baas3-fe
Commits
e16de956
Commit
e16de956
authored
Dec 30, 2021
by
guxukai
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
fix: 折叠菜单重复获取路由的bug
parent
6abd5d2b
Hide whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
29 additions
and
19 deletions
+29
-19
index.vue
src/shared/layouts/components/aside-menu-list/index.vue
+26
-7
default-layout.vue
src/shared/layouts/default-layout.vue
+1
-12
index.ts
src/shared/plugins/i18n/index.ts
+1
-0
shims-router.d.ts
src/shims-router.d.ts
+1
-0
No files found.
src/shared/layouts/components/aside-menu-list/index.vue
View file @
e16de956
<
template
>
<
template
>
<g-query-wrapper
:data=
"menuData"
:loading=
"menuLoading"
:error=
"menuError"
:run=
"menuRun"
>
<g-query-wrapper
:data=
"menuData"
:loading=
"menuLoading"
:error=
"menuError"
:run=
"menuRun"
>
<aside-menu-item
<el-menu
v-for=
"menu in $router.options.routes
:default-active=
"currentActiveRoute"
.find(_ => _.name === 'default')
:background-color=
"themeFlag === 'light' ? 'transparent' : isCollapse ? '#151930' : '#1f2a37'"
.children.filter(_ => _.meta.showInAsideMenu)"
:text-color=
"themeFlag === 'light' ? '#374151' : '#ffffff'"
:key=
"menu.name"
:active-text-color=
"themeFlag === 'light' ? '#047857' : '#6EE7B7'"
:menu=
"menu"
:collapse=
"isCollapse"
/>
:default-openeds=
"['home']"
class=
"border-none"
>
<aside-menu-item
v-for=
"menu in $router.options.routes
.find(_ => _.name === 'default')
.children.filter(_ => _.meta.showInAsideMenu)"
:key=
"menu.name"
:menu=
"menu"
/>
</el-menu>
</g-query-wrapper>
</g-query-wrapper>
</
template
>
</
template
>
<
script
lang=
"ts"
>
<
script
lang=
"ts"
>
...
@@ -23,16 +33,25 @@ import { useRequest } from 'vue-request'
...
@@ -23,16 +33,25 @@ import { useRequest } from 'vue-request'
import
{
AuthMenuInfo
}
from
'@shared/models/auth-service/AuthMenuInfo'
import
{
AuthMenuInfo
}
from
'@shared/models/auth-service/AuthMenuInfo'
import
{
GATEWAY_CODE
}
from
'@shared/http/constants'
import
{
GATEWAY_CODE
}
from
'@shared/http/constants'
import
{
filterAsyncRoutes
,
hasPermission
}
from
'@shared/utils/route-utils'
import
{
filterAsyncRoutes
,
hasPermission
}
from
'@shared/utils/route-utils'
import
{
computed
}
from
'vue'
const
props
=
defineProps
({
const
props
=
defineProps
({
enableRouteFilter
:
{
enableRouteFilter
:
{
type
:
Boolean
,
type
:
Boolean
,
default
:
false
,
default
:
false
,
},
},
themeFlag
:
{
type
:
String
,
},
isCollapse
:
{
type
:
Boolean
,
default
:
false
,
},
})
})
const
$router
=
useRouter
()
const
$router
=
useRouter
()
const
$route
=
useRoute
()
const
$route
=
useRoute
()
const
userStore
=
useUser
()
const
userStore
=
useUser
()
const
authStore
=
useAuth
()
const
authStore
=
useAuth
()
const
currentActiveRoute
=
computed
(()
=>
$route
.
name
as
string
)
const
{
const
{
data
:
menuData
,
data
:
menuData
,
loading
:
menuLoading
,
loading
:
menuLoading
,
...
...
src/shared/layouts/default-layout.vue
View file @
e16de956
...
@@ -29,17 +29,7 @@
...
@@ -29,17 +29,7 @@
:class=
"[isCollapse ? 'bg-[#151930]' : 'bg-[#1f2a37]']"
:class=
"[isCollapse ? 'bg-[#151930]' : 'bg-[#1f2a37]']"
style=
"height: 1px"
style=
"height: 1px"
></div>
></div>
<el-menu
<aside-menu-list
:enable-route-filter=
"enableRouteFilter"
:theme-flag=
"themeFlag"
:is-collapse=
"isCollapse"
/>
:default-active=
"currentActiveRoute"
:background-color=
"themeFlag === 'light' ? 'transparent' : isCollapse ? '#151930' : '#1f2a37'"
:text-color=
"themeFlag === 'light' ? '#374151' : '#ffffff'"
:active-text-color=
"themeFlag === 'light' ? '#047857' : '#6EE7B7'"
:collapse=
"isCollapse"
:default-openeds=
"['home']"
class=
"border-none"
>
<aside-menu-list
:enable-route-filter=
"enableRouteFilter"
/>
</el-menu>
</div>
</div>
</div>
</div>
</el-aside>
</el-aside>
...
@@ -144,7 +134,6 @@ const layoutStore = useLayout()
...
@@ -144,7 +134,6 @@ const layoutStore = useLayout()
const
PROJECT_NAME
=
process
.
env
.
APP_NAME
const
PROJECT_NAME
=
process
.
env
.
APP_NAME
const
$route
=
useRoute
()
const
$route
=
useRoute
()
const
$router
=
useRouter
()
const
$router
=
useRouter
()
const
currentActiveRoute
=
computed
(()
=>
$route
.
name
as
string
)
const
breadcrumbList
=
computed
(()
=>
layoutStore
.
breadcrumbList
)
const
breadcrumbList
=
computed
(()
=>
layoutStore
.
breadcrumbList
)
const
localeList
:
{
key
:
LocaleType
;
value
:
string
}[]
=
[
const
localeList
:
{
key
:
LocaleType
;
value
:
string
}[]
=
[
{
{
...
...
src/shared/plugins/i18n/index.ts
View file @
e16de956
...
@@ -19,4 +19,5 @@ export const i18n = createI18n({
...
@@ -19,4 +19,5 @@ export const i18n = createI18n({
...
enLocale
,
...
enLocale
,
},
},
},
},
silentTranslationWarn
:
true
,
})
})
src/shims-router.d.ts
View file @
e16de956
...
@@ -4,5 +4,6 @@ declare module 'vue-router' {
...
@@ -4,5 +4,6 @@ declare module 'vue-router' {
interface
RouteMeta
{
interface
RouteMeta
{
title
?:
string
title
?:
string
level
?:
number
level
?:
number
showInAsideMenu
?:
boolean
}
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment