diff --git a/apps/vue/src/components/Table/src/components/editable/EditableCell.vue b/apps/vue/src/components/Table/src/components/editable/EditableCell.vue index 87fa6361e..cd4113b79 100644 --- a/apps/vue/src/components/Table/src/components/editable/EditableCell.vue +++ b/apps/vue/src/components/Table/src/components/editable/EditableCell.vue @@ -77,6 +77,11 @@ if (isFunction(compProps)) { compProps = compProps({ text: val, record, column, index }) ?? {}; } + + // 用临时变量存储 onChange方法 用于 handleChange方法 获取,并删除原始onChange, 防止存在两个 onChange + compProps.onChangeTemp = compProps.onChange; + delete compProps.onChange; + const component = unref(getComponent); const apiSelectProps: Recordable = {}; if (component === 'ApiSelect') { @@ -186,7 +191,7 @@ } else if (isString(e) || isBoolean(e) || isNumber(e) || isArray(e)) { currentValueRef.value = e; } - const onChange = unref(getComponentProps)?.onChange; + const onChange = unref(getComponentProps)?.onChangeTemp; if (onChange && isFunction(onChange)) onChange(...arguments); table.emit?.('edit-change', { @@ -404,8 +409,7 @@ column: this.column, index: this.index, }) - : (this.getValues ?? "\u00A0") - } + : (this.getValues ?? "\u00A0")} {!this.column.editRow && }