diff --git a/CHANGELOG.md b/CHANGELOG.md
index 4a5f1d9eefe3ae923fa904827e314385a3600dfc..8c702b7441934234e3f71ae41e5212ead3c85bd7 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -15,6 +15,12 @@
- 新增列表部件样式-扩展视图3:仅非分组列表和分组样式2列表支持,实现列表的从下往上的绘制,同时滚动加载也支持上滚加载
- 新增数据多项选择视图,数据多项选择视图(左右关系)视图参数checkstrictly(是否严格的遵循穿梭空左右互相关联)
+### Changed
+
+- 适配全局参数disableHomeTabs(是否禁用分页导航栏)逻辑,该参数为true时首页不显示分页导航栏
+- 适配表单多数据部件对全局参数mdCtrlConfirmBeforeRemove(多数据部件删除前是否需要确认)的支持,并统一多数据部件删除确认弹框的显示样式
+- 调整表单项组件中处理编辑器额外参数逻辑,将其迁移到控制器中处理
+
### Fixed
- 修复树选中异常
diff --git a/src/control/form/form-detail/form-item/form-item.tsx b/src/control/form/form-detail/form-item/form-item.tsx
index e18365b819fefa927531c3e1a0853d60337a7053..ef6922db4ec2d6e5e6e797beeba5516e4f991d4f 100644
--- a/src/control/form/form-detail/form-item/form-item.tsx
+++ b/src/control/form/form-detail/form-item/form-item.tsx
@@ -1,4 +1,4 @@
-import { defineComponent, h, PropType, ref, resolveComponent } from 'vue';
+import { defineComponent, h, PropType, resolveComponent } from 'vue';
import { useNamespace } from '@ibiz-template/vue3-util';
import { IDEFormItem } from '@ibiz/model-core';
import { FormItemController } from '@ibiz-template/runtime';
@@ -32,31 +32,7 @@ export const FormItem = defineComponent({
props.controller.setDataValue(val, name, ignore);
};
- // 额外参数
- const extraParams = ref({});
-
- // 是否隐藏无值的单位
- let emptyHiddenUnit = ibiz.config.form.emptyHiddenUnit;
- const emptyhiddenunit =
- props.controller.form?.controlParams?.emptyhiddenunit;
-
- if (emptyhiddenunit) {
- emptyHiddenUnit = Object.is(emptyhiddenunit, 'true');
- }
-
- // 编辑器参数优先级最高
- const editorParams = props.controller.editor?.model?.editorParams || {};
- const { EMPTYHIDDENUNIT } = editorParams;
-
- if (EMPTYHIDDENUNIT) {
- emptyHiddenUnit = Object.is(EMPTYHIDDENUNIT, 'true');
- }
-
- Object.assign(extraParams.value, {
- emptyHiddenUnit,
- });
-
- return { ns, c, extraParams, onValueChange };
+ return { ns, c, onValueChange };
},
render() {
if (!this.c.state.visible || this.c.model.editor?.editorType === 'HIDDEN') {
@@ -93,7 +69,7 @@ export const FormItem = defineComponent({
disabled: this.c.state.disabled,
readonly: this.c.state.readonly,
onChange: this.onValueChange,
- extraParams: this.extraParams,
+ extraParams: (this.c.editor as IData)?.extraParams || {},
controlParams: editMode
? { ...this.c.form.controlParams, editmode: editMode }
: this.c.form.controlParams,
diff --git a/src/control/form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.tsx b/src/control/form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.tsx
index 65af121e8747e5065ad8f38f7bf7374676bc82db..9fb9f30c400d82bc2c0eddc5efa5e2cbcccc5c85 100644
--- a/src/control/form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.tsx
+++ b/src/control/form/form-detail/form-mdctrl/form-mdctrl-md/form-mdctrl-md.tsx
@@ -13,6 +13,7 @@ import {
} from '@ibiz-template/runtime';
import { useNamespace } from '@ibiz-template/vue3-util';
import './form-mdctrl-md.scss';
+import { showTitle } from '@ibiz-template/core';
export const FormMDCtrlMD = defineComponent({
name: 'IBizFormMDCtrlMD',
@@ -40,7 +41,57 @@ export const FormMDCtrlMD = defineComponent({
isSelected.value = event.data.length > 0;
};
- return { ns, showActions, isSelected, onCreated, onSelectionChange };
+ /** 处理删除 */
+ const handleRemove = (): void => {
+ isSelected.value = false;
+ props.controller.remove();
+ };
+
+ /** 绘制删除按钮 */
+ const renderRemoveBtn = () => {
+ if (!props.controller.enableDelete) return null;
+ if (ibiz.config.form.mdCtrlConfirmBeforeRemove) {
+ return (
+