diff --git a/io.sc.platform.core.frontend/src/platform/components/grid/GridTop.vue b/io.sc.platform.core.frontend/src/platform/components/grid/GridTop.vue index 41ed7c39..96c221a6 100644 --- a/io.sc.platform.core.frontend/src/platform/components/grid/GridTop.vue +++ b/io.sc.platform.core.frontend/src/platform/components/grid/GridTop.vue @@ -640,7 +640,11 @@ const handleChildrenBtn = (arr, moreQueryShow) => { tempArr.push(buttonObj[btn]); } } else if (typeof btn === 'object' && btn.extend && buttonObj[btn.extend]) { - tempArr.push({ ...buttonObj[btn.extend], ...btn, _click: buttonObj[btn.extend].click }); + let overrideClick = false; + if (btn.click) { + overrideClick = true; + } + tempArr.push({ ...buttonObj[btn.extend], ...btn, _click: buttonObj[btn.extend].click, overrideClick }); } else { tempArr.push(btn); } @@ -680,7 +684,11 @@ const handleToolbarActions = () => { buttons_.value.push(handleChildrenBtn(btn, moreQueryShow)); } else if (typeof btn === 'object' && btn.extend && buttonObj[btn.extend]) { // 继承内置按钮 - buttons_.value.push({ ...buttonObj[btn.extend], ...btn, _click: buttonObj[btn.extend].click }); + let overrideClick = false; + if (btn.click) { + overrideClick = true; + } + buttons_.value.push({ ...buttonObj[btn.extend], ...btn, _click: buttonObj[btn.extend].click, overrideClick: overrideClick }); } else { buttons_.value.push(btn); } diff --git a/io.sc.platform.core.frontend/src/platform/components/toolbar/WToolbar.vue b/io.sc.platform.core.frontend/src/platform/components/toolbar/WToolbar.vue index 97e766ff..ce117a27 100644 --- a/io.sc.platform.core.frontend/src/platform/components/toolbar/WToolbar.vue +++ b/io.sc.platform.core.frontend/src/platform/components/toolbar/WToolbar.vue @@ -473,7 +473,9 @@ const buttonClick = async (button) => { let callAfterEditorOpen = true; const clickProps = { ...args }; if (button._click) { - callAfterEditorOpen = false; + if (button.overrideClick) { + callAfterEditorOpen = false; + } clickProps['_click'] = (_args: any) => { button._click(_args || args); callAfterEditorOpen = true;