Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
B
basic-vue-admin
概览
概览
详情
活动
周期分析
版本库
存储库
文件
提交
分支
标签
贡献者
分支图
比较
统计图
问题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
Basic
basic-vue-admin
Commits
6bb19fb2
提交
6bb19fb2
authored
3月 27, 2021
作者:
Vben
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
feat(tree): add headerTitle slot
上级
782cbc0a
隐藏空白字符变更
内嵌
并排
正在显示
14 个修改的文件
包含
29 行增加
和
21 行删除
+29
-21
CHANGELOG.zh_CN.md
CHANGELOG.zh_CN.md
+4
-0
props.ts
src/components/Form/src/props.ts
+0
-1
BasicMenu.vue
src/components/Menu/src/BasicMenu.vue
+2
-2
SimpleMenu.vue
src/components/SimpleMenu/src/SimpleMenu.vue
+2
-2
TreeHeader.vue
src/components/Tree/src/TreeHeader.vue
+4
-1
index.vue
src/components/Tree/src/index.vue
+4
-2
useTitle.ts
src/hooks/web/useTitle.ts
+2
-2
MixSider.vue
src/layouts/default/sider/MixSider.vue
+2
-2
index.vue
src/layouts/default/tabs/index.vue
+2
-2
routeChange.ts
src/logics/mitt/routeChange.ts
+2
-2
httpGuard.ts
src/router/guard/httpGuard.ts
+1
-1
pageGuard.ts
src/router/guard/pageGuard.ts
+2
-2
pageLoadingGuard.ts
src/router/guard/pageLoadingGuard.ts
+1
-1
stateGuard.ts
src/router/guard/stateGuard.ts
+1
-1
没有找到文件。
CHANGELOG.zh_CN.md
浏览文件 @
6bb19fb2
## Wip
### ✨ Features
-
新增
`headerTitle`
slot
### ✨ Refactor
-
移除 useFullScreen 函数
...
...
src/components/Form/src/props.ts
浏览文件 @
6bb19fb2
...
...
@@ -25,7 +25,6 @@ export const basicProps = {
schemas
:
{
type
:
[
Array
]
as
PropType
<
FormSchema
[]
>
,
default
:
()
=>
[],
required
:
true
,
},
mergeDynamicData
:
{
type
:
Object
as
PropType
<
Recordable
>
,
...
...
src/components/Menu/src/BasicMenu.vue
浏览文件 @
6bb19fb2
...
...
@@ -38,7 +38,7 @@
import
{
getCurrentParentPath
}
from
'/@/router/menus'
;
import
{
listener
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
listener
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
import
{
getAllParentPath
}
from
'/@/router/helper/menuHelper'
;
export
default
defineComponent
({
...
...
@@ -105,7 +105,7 @@
return
inlineCollapseOptions
;
});
listener
LastChangeTab
((
route
)
=>
{
listener
RouteChange
((
route
)
=>
{
if
(
route
.
name
===
REDIRECT_NAME
)
return
;
handleMenuChange
(
route
);
currentActiveMenu
.
value
=
route
.
meta
?.
currentActiveMenu
as
string
;
...
...
src/components/SimpleMenu/src/SimpleMenu.vue
浏览文件 @
6bb19fb2
...
...
@@ -27,7 +27,7 @@
import
Menu
from
'./components/Menu.vue'
;
import
SimpleSubMenu
from
'./SimpleSubMenu.vue'
;
import
{
listener
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
listener
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
import
{
propTypes
}
from
'/@/utils/propTypes'
;
import
{
REDIRECT_NAME
}
from
'/@/router/constant'
;
import
{
RouteLocationNormalizedLoaded
,
useRouter
}
from
'vue-router'
;
...
...
@@ -91,7 +91,7 @@
{
immediate
:
true
}
);
listener
LastChangeTab
((
route
)
=>
{
listener
RouteChange
((
route
)
=>
{
if
(
route
.
name
===
REDIRECT_NAME
)
return
;
currentActiveMenu
.
value
=
route
.
meta
?.
currentActiveMenu
as
string
;
...
...
src/components/Tree/src/TreeHeader.vue
浏览文件 @
6bb19fb2
<
template
>
<div
class=
"flex px-2 py-1.5 items-center border-b-1"
>
<BasicTitle
:helpMessage=
"helpMessage"
v-if=
"title"
>
{{
title
}}
</BasicTitle>
<slot
name=
"headerTitle"
v-if=
"$slots.headerTitle"
></slot>
<BasicTitle
:helpMessage=
"helpMessage"
v-if=
"!$slots.headerTitle && title"
>
{{
title
}}
</BasicTitle>
<div
class=
"flex flex-1 justify-end items-center cursor-pointer"
v-if=
"search || toolbar"
>
<div
class=
"mr-1 w-2/3"
v-if=
"search"
>
...
...
src/components/Tree/src/index.vue
浏览文件 @
6bb19fb2
...
...
@@ -321,7 +321,7 @@
}
return
()
=>
{
const
{
title
,
helpMessage
,
toolbar
,
search
,
checkable
}
=
props
;
const
showTitle
=
title
||
toolbar
||
search
;
const
showTitle
=
title
||
toolbar
||
search
||
slots
.
headerTitle
;
const
scrollStyle
:
CSSProperties
=
{
height
:
'calc(100% - 38px)'
};
return
(
<
div
class
=
{[
prefixCls
,
'h-full bg-white'
,
attrs
.
class
]}
>
...
...
@@ -336,7 +336,9 @@
helpMessage
=
{
helpMessage
}
onStrictlyChange
=
{
onStrictlyChange
}
onSearch
=
{
handleSearch
}
/
>
>
{
extendSlots
(
slots
)}
<
/TreeHeader
>
)}
<
ScrollContainer
style
=
{
scrollStyle
}
v
-
show
=
{
!
unref
(
getNotFound
)}
>
<
Tree
{...
unref
(
getBindValues
)}
showIcon
=
{
false
}
>
...
...
src/hooks/web/useTitle.ts
浏览文件 @
6bb19fb2
...
...
@@ -3,7 +3,7 @@ import { useTitle as usePageTitle } from '@vueuse/core';
import
{
useGlobSetting
}
from
'/@/hooks/setting'
;
import
{
REDIRECT_NAME
}
from
'/@/router/constant'
;
import
{
listener
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
listener
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
export
function
useTitle
()
{
const
{
title
}
=
useGlobSetting
();
...
...
@@ -11,7 +11,7 @@ export function useTitle() {
const
pageTitle
=
usePageTitle
();
listener
LastChangeTab
((
route
)
=>
{
listener
RouteChange
((
route
)
=>
{
if
(
route
.
name
===
REDIRECT_NAME
)
{
return
;
}
...
...
src/layouts/default/sider/MixSider.vue
浏览文件 @
6bb19fb2
...
...
@@ -101,7 +101,7 @@
import
clickOutside
from
'/@/directives/clickOutside'
;
import
{
getShallowMenus
,
getChildrenMenus
,
getCurrentParentPath
}
from
'/@/router/menus'
;
import
{
listener
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
listener
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
import
{
SimpleMenu
}
from
'/@/components/SimpleMenu'
;
export
default
defineComponent
({
...
...
@@ -202,7 +202,7 @@
menuModules
.
value
=
await
getShallowMenus
();
});
listener
LastChangeTab
((
route
)
=>
{
listener
RouteChange
((
route
)
=>
{
currentRoute
.
value
=
route
;
setActive
(
true
);
if
(
unref
(
getCloseMixSidebarOnChange
))
{
...
...
src/layouts/default/tabs/index.vue
浏览文件 @
6bb19fb2
...
...
@@ -46,7 +46,7 @@
import
{
useMultipleTabSetting
}
from
'/@/hooks/setting/useMultipleTabSetting'
;
import
{
REDIRECT_NAME
}
from
'/@/router/constant'
;
import
{
listener
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
listener
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
import
router
from
'/@/router'
;
...
...
@@ -84,7 +84,7 @@
];
});
listener
LastChangeTab
((
route
)
=>
{
listener
RouteChange
((
route
)
=>
{
const
{
name
}
=
route
;
if
(
name
===
REDIRECT_NAME
||
!
route
||
!
userStore
.
getTokenState
)
return
;
...
...
src/logics/mitt/
tab
Change.ts
→
src/logics/mitt/
route
Change.ts
浏览文件 @
6bb19fb2
...
...
@@ -12,13 +12,13 @@ const key = Symbol();
let
lastChangeTab
:
RouteLocationNormalized
;
export
function
set
LastChangeTab
(
lastChangeRoute
:
RouteLocationNormalized
)
{
export
function
set
RouteChange
(
lastChangeRoute
:
RouteLocationNormalized
)
{
const
r
=
getRawRoute
(
lastChangeRoute
);
mitt
.
emit
(
key
,
r
);
lastChangeTab
=
r
;
}
export
function
listener
LastChangeTab
(
export
function
listener
RouteChange
(
callback
:
(
route
:
RouteLocationNormalized
)
=>
void
,
immediate
=
true
)
{
...
...
src/router/guard/httpGuard.ts
浏览文件 @
6bb19fb2
...
...
@@ -14,7 +14,7 @@ export function createHttpGuard(router: Router) {
}
router
.
beforeEach
(
async
()
=>
{
// Switching the route will delete the previous request
removeAllHttpPending
&&
axiosCanceler
?.
removeAllPending
();
axiosCanceler
?.
removeAllPending
();
return
true
;
});
}
src/router/guard/pageGuard.ts
浏览文件 @
6bb19fb2
import
type
{
Router
}
from
'vue-router'
;
import
{
set
LastChangeTab
}
from
'/@/logics/mitt/tab
Change'
;
import
{
set
RouteChange
}
from
'/@/logics/mitt/route
Change'
;
export
function
createPageGuard
(
router
:
Router
)
{
const
loadedPageMap
=
new
Map
<
string
,
boolean
>
();
...
...
@@ -7,7 +7,7 @@ export function createPageGuard(router: Router) {
router
.
beforeEach
(
async
(
to
)
=>
{
to
.
meta
.
loaded
=
!!
loadedPageMap
.
get
(
to
.
path
);
// Notify routing changes
set
LastChangeTab
(
to
);
set
RouteChange
(
to
);
return
true
;
});
...
...
src/router/guard/pageLoadingGuard.ts
浏览文件 @
6bb19fb2
...
...
@@ -25,7 +25,7 @@ export function createPageLoadingGuard(router: Router) {
if
(
unref
(
getOpenPageLoading
))
{
setTimeout
(()
=>
{
appStore
.
commitPageLoadingState
(
false
);
},
30
0
);
},
22
0
);
}
return
true
;
});
...
...
src/router/guard/stateGuard.ts
浏览文件 @
6bb19fb2
...
...
@@ -4,7 +4,7 @@ import { tabStore } from '/@/store/modules/tab';
import
{
userStore
}
from
'/@/store/modules/user'
;
import
{
permissionStore
}
from
'/@/store/modules/permission'
;
import
{
PageEnum
}
from
'/@/enums/pageEnum'
;
import
{
removeTabChangeListener
}
from
'/@/logics/mitt/
tab
Change'
;
import
{
removeTabChangeListener
}
from
'/@/logics/mitt/
route
Change'
;
export
function
createStateGuard
(
router
:
Router
)
{
router
.
afterEach
((
to
)
=>
{
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论