{items.map((item: IAppDEUIActionGroupDetail, index: number) => {
if (
!(props.buttonsState[item.id!]?.visible === false) &&
(actionGroupExtractMode !== 'ITEMX' ||
index !== firstIndex.value)
) {
- return (
- {renderButton(item)}
- );
+ return renderButton(item, false);
}
return null;
})}
-
+
),
}}
@@ -362,7 +446,9 @@ export const IBizButtonList = defineComponent({
sliceIndex.value === -1 ? [] : groupDetails.slice(sliceIndex.value);
return (
- {items.map((item: IAppDEUIActionGroupDetail) => renderButton(item))}
+ {items.map((item: IAppDEUIActionGroupDetail) =>
+ renderButton(item, true),
+ )}
{moreItems.length
? renderDropdown(moreItems, 'ellipsis-horizontal')
: null}
diff --git a/src/control/kanban/kanban.scss b/src/control/kanban/kanban.scss
index 56db6dde..1336fcee 100644
--- a/src/control/kanban/kanban.scss
+++ b/src/control/kanban/kanban.scss
@@ -282,11 +282,14 @@ $control-kanban: (
position: relative;
@include e(popover) {
- >.el-scrollbar {
+ > .el-scrollbar {
+ min-width: 150px;
overflow: visible;
}
.#{bem(action-toolbar, popover)} {
+ padding: getCssVar(spacing, extra, tight) getCssVar('spacing', 'none') !important;
background-color: getCssVar(color, primary) !important;
+ border-radius: 0 !important;
}
}
diff --git a/src/control/kanban/kanban.tsx b/src/control/kanban/kanban.tsx
index 6d4f296e..d660941f 100644
--- a/src/control/kanban/kanban.tsx
+++ b/src/control/kanban/kanban.tsx
@@ -518,6 +518,7 @@ export const KanbanControl = defineComponent({
{c.model.groupUIActionGroup &&
group.groupActionGroupState && (
{
const { buttonListType, uiactionGroup, panelButtons } = this.model;
if (buttonListType === 'UIACTIONGROUP') {
- uiactionGroup?.uiactionGroupDetails?.forEach(detail => {
- if (detail.uiactionId) {
- const buttonState = new UIActionButtonState(
- detail.id!,
- detail.appId,
- detail.uiactionId,
- detail,
- );
- this.state.buttonsState.addState(detail.id!, buttonState);
- }
- });
+ if (uiactionGroup?.uiactionGroupDetails) {
+ const actions = getAllUIActionItems(uiactionGroup.uiactionGroupDetails);
+ actions.forEach(detail => {
+ if (detail.uiactionId) {
+ const buttonState = new UIActionButtonState(
+ detail.id!,
+ detail.appId,
+ detail.uiactionId,
+ detail,
+ );
+ this.state.buttonsState.addState(detail.id!, buttonState);
+ }
+ });
+ }
} else {
panelButtons?.forEach(button => {
if (button.uiactionId) {
@@ -143,10 +147,10 @@ export class PanelButtonListController extends PanelItemController detail.id === id,
- );
+ if (buttonListType === 'UIACTIONGROUP') {
+ const actions = getAllUIActionItems(uiactionGroup?.uiactionGroupDetails);
+ return actions.find(detail => detail.id === id);
+ }
return panelButtons?.find(button => button.id === id);
}
--
Gitee
From 9c8a2f7ea6ef2ec01bbcf9b4aea8728c32f82918 Mon Sep 17 00:00:00 2001
From: ShineKOT <1917095344@qq.com>
Date: Wed, 10 Sep 2025 14:13:12 +0800
Subject: [PATCH 2/5] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E8=8F=9C=E5=8D=95?=
=?UTF-8?q?=E9=BB=98=E8=AE=A4=E6=89=93=E5=BC=80=E8=8F=9C=E5=8D=95=E9=A1=B9?=
=?UTF-8?q?=E6=97=A0=E6=9D=83=E9=99=90=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
CHANGELOG.md | 1 +
src/control/app-menu/app-menu.tsx | 11 +++++------
2 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 8758f43f..937b1660 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -26,6 +26,7 @@
- 修复树选中异常
- 修复导入请求路径不正确异常
+- 修复菜单默认打开菜单项无权限显示问题
## [0.7.41-alpha.24] - 2025-09-04
diff --git a/src/control/app-menu/app-menu.tsx b/src/control/app-menu/app-menu.tsx
index bcd455e9..6051caf5 100644
--- a/src/control/app-menu/app-menu.tsx
+++ b/src/control/app-menu/app-menu.tsx
@@ -460,7 +460,9 @@ export const AppMenuControl = defineComponent({
currentPath: { type: String },
},
setup(props) {
- const c = useControlController((...args) => new AppMenuController(...args));
+ const c: AppMenuController = useControlController(
+ (...args) => new AppMenuController(...args),
+ );
const ns = useNamespace(`control-${c.model.controlType!.toLowerCase()}`);
const menus = ref(getMenus(c.model.appMenuItems!));
@@ -539,11 +541,8 @@ export const AppMenuControl = defineComponent({
c.evt.on('onCreated', async () => {
saveConfigs.value = c.saveConfigs;
- const allItems = c.getAllItems();
// 默认激活的菜单项
- const defaultActiveMenuItem = allItems.find(item => {
- return item.openDefault && !item.hidden;
- });
+ const defaultActiveMenuItem = c.getDefaultOpenMenuItem();
if (
defaultActiveMenuItem &&
!route?.params.view2 &&
@@ -556,7 +555,7 @@ export const AppMenuControl = defineComponent({
defaultActive.value = activeMenu ? activeMenu.id! : '';
}
// 默认展开的菜单项数组
- const defaultOpensArr = allItems.filter(item => {
+ const defaultOpensArr = c.getAllItems().filter(item => {
return item.expanded && !item.hidden;
});
if (defaultOpensArr.length > 0) {
--
Gitee
From afc9f2539345c0f6b7f322ace2b95c97e4cf0e2f Mon Sep 17 00:00:00 2001
From: ShineKOT <1917095344@qq.com>
Date: Wed, 10 Sep 2025 14:48:09 +0800
Subject: [PATCH 3/5] =?UTF-8?q?fix:=20=E4=BF=AE=E5=A4=8D=E9=9D=A2=E6=9D=BF?=
=?UTF-8?q?=E6=88=90=E5=91=98=E7=82=B9=E5=87=BB=E6=9C=AA=E4=BC=A0=E9=80=92?=
=?UTF-8?q?=E4=BA=8B=E4=BB=B6=E6=BA=90?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
CHANGELOG.md | 1 +
src/panel-component/index-actions/index-actions.tsx | 4 +---
.../index-blank-placeholder/index-blank-placeholder.tsx | 4 +---
.../panel-app-login-view/panel-app-login-view.tsx | 4 +---
src/panel-component/panel-app-title/panel-app-title.tsx | 4 ++--
src/panel-component/panel-button-list/panel-button-list.tsx | 3 +--
src/panel-component/panel-button/panel-button.controller.ts | 4 +---
7 files changed, 8 insertions(+), 16 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 937b1660..220eb365 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -27,6 +27,7 @@
- 修复树选中异常
- 修复导入请求路径不正确异常
- 修复菜单默认打开菜单项无权限显示问题
+- 修复面板成员点击未传递事件源
## [0.7.41-alpha.24] - 2025-09-04
diff --git a/src/panel-component/index-actions/index-actions.tsx b/src/panel-component/index-actions/index-actions.tsx
index 94038aad..e791e3f4 100644
--- a/src/panel-component/index-actions/index-actions.tsx
+++ b/src/panel-component/index-actions/index-actions.tsx
@@ -78,9 +78,7 @@ export const IndexActions = defineComponent({
return (
{
- this.controller.onClick();
- }}
+ onClick={event => this.controller.onClick(event)}
>
{this.controller.model.cssStyle ? (
diff --git a/src/panel-component/index-blank-placeholder/index-blank-placeholder.tsx b/src/panel-component/index-blank-placeholder/index-blank-placeholder.tsx
index f1e1db76..58111556 100644
--- a/src/panel-component/index-blank-placeholder/index-blank-placeholder.tsx
+++ b/src/panel-component/index-blank-placeholder/index-blank-placeholder.tsx
@@ -77,9 +77,7 @@ export const IndexBlankPlaceholder = defineComponent({
return (
{
- this.controller.onClick();
- }}
+ onClick={event => this.controller.onClick(event)}
>
{this.controller.model.cssStyle ? (
diff --git a/src/panel-component/panel-app-login-view/panel-app-login-view.tsx b/src/panel-component/panel-app-login-view/panel-app-login-view.tsx
index 0c353951..7f45a02d 100644
--- a/src/panel-component/panel-app-login-view/panel-app-login-view.tsx
+++ b/src/panel-component/panel-app-login-view/panel-app-login-view.tsx
@@ -86,9 +86,7 @@ export const PanelAppLoginView = defineComponent({
{
- this.controller.onClick();
- }}
+ onClick={event => this.controller.onClick(event)}
>
{this.controller.model.cssStyle ? (
diff --git a/src/panel-component/panel-app-title/panel-app-title.tsx b/src/panel-component/panel-app-title/panel-app-title.tsx
index 98c36aa8..6d9a31f7 100644
--- a/src/panel-component/panel-app-title/panel-app-title.tsx
+++ b/src/panel-component/panel-app-title/panel-app-title.tsx
@@ -52,7 +52,7 @@ export const PanelAppTitle = defineComponent({
return 'LEFT';
});
- const handleClick = async () => {
+ const handleClick = async (event: MouseEvent) => {
// 适配登录页系统标题不提供点击链接能力
if (c.panel.view.model.viewType === 'APPLOGINVIEW') return;
// 跳转首页
@@ -66,7 +66,7 @@ export const PanelAppTitle = defineComponent({
});
}
- props.controller.onClick();
+ props.controller.onClick(event);
};
const showImgOnly = computed(() => {
diff --git a/src/panel-component/panel-button-list/panel-button-list.tsx b/src/panel-component/panel-button-list/panel-button-list.tsx
index a279e6e4..d1753c22 100644
--- a/src/panel-component/panel-button-list/panel-button-list.tsx
+++ b/src/panel-component/panel-button-list/panel-button-list.tsx
@@ -47,7 +47,7 @@ export const PanelButtonList = defineComponent({
},
render() {
const { state } = this.controller;
- if (state.visible) {
+ if (state.visible)
return (
);
- }
return null;
},
});
diff --git a/src/panel-component/panel-button/panel-button.controller.ts b/src/panel-component/panel-button/panel-button.controller.ts
index bbc11c5c..e541dd36 100644
--- a/src/panel-component/panel-button/panel-button.controller.ts
+++ b/src/panel-component/panel-button/panel-button.controller.ts
@@ -128,9 +128,7 @@ export class PanelButtonController extends PanelItemController
{
*/
async onActionClick(event: MouseEvent): Promise {
const { uiactionId, actionType } = this.model;
- if (actionType === 'NONE') {
- return;
- }
+ if (actionType === 'NONE') return;
event.stopPropagation();
event.preventDefault();
await UIActionUtil.execAndResolved(
--
Gitee
From 506b9b8b5a27ead9d0267c3ede1cbaad653c16de Mon Sep 17 00:00:00 2001
From: ShineKOT <1917095344@qq.com>
Date: Wed, 10 Sep 2025 14:55:44 +0800
Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/panel-component/panel-button/panel-button.scss | 6 +++++-
1 file changed, 5 insertions(+), 1 deletion(-)
diff --git a/src/panel-component/panel-button/panel-button.scss b/src/panel-component/panel-button/panel-button.scss
index 7c60a6e6..ab471f63 100644
--- a/src/panel-component/panel-button/panel-button.scss
+++ b/src/panel-component/panel-button/panel-button.scss
@@ -13,7 +13,11 @@ $panel-button: (
.el-button{
width: 100%;
-
+
+ > span {
+ // 禁用点击事件,保证event.target是button元素
+ pointer-events: none;
+ }
@include b(panel-button-content){
@include flex(row, flex-start, center);
--
Gitee
From 5843445dca2558f66129b4d4d6b9bcc462b486f5 Mon Sep 17 00:00:00 2001
From: ShineKOT <1917095344@qq.com>
Date: Wed, 10 Sep 2025 15:20:30 +0800
Subject: [PATCH 5/5] =?UTF-8?q?feat:=20=E6=9B=B4=E6=96=B0=E5=BC=95?=
=?UTF-8?q?=E7=94=A8=E7=95=8C=E9=9D=A2=E8=A1=8C=E4=B8=BA=E7=BB=84=E6=A0=87?=
=?UTF-8?q?=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/common/action-toolbar/action-toolbar.tsx | 2 +-
src/common/button-list/button-list.tsx | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/src/common/action-toolbar/action-toolbar.tsx b/src/common/action-toolbar/action-toolbar.tsx
index 161334c4..0cc40f37 100644
--- a/src/common/action-toolbar/action-toolbar.tsx
+++ b/src/common/action-toolbar/action-toolbar.tsx
@@ -194,7 +194,7 @@ export const IBizActionToolbar = defineComponent({
]}
>
-
{actionGroup.id}
+
{actionGroup.name || actionGroup.id}
- {actionGroup.id}
+ {actionGroup.name || actionGroup.id}