From 504adcb01793cb58d23a5d3cfb56da12a509de7f Mon Sep 17 00:00:00 2001 From: roymondchen Date: Mon, 28 Mar 2022 20:27:39 +0800 Subject: [PATCH] =?UTF-8?q?fix(form):=20onChange=E3=80=81filter=E3=80=81tr?= =?UTF-8?q?im=E5=87=BD=E6=95=B0=E8=B0=83=E7=94=A8=E5=BC=82=E5=B8=B8?= =?UTF-8?q?=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/form/src/containers/Container.vue | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/packages/form/src/containers/Container.vue b/packages/form/src/containers/Container.vue index 26363423..aca4a053 100644 --- a/packages/form/src/containers/Container.vue +++ b/packages/form/src/containers/Container.vue @@ -224,10 +224,15 @@ export default defineComponent({ const onChangeHandler = async function (v: FormValue, key?: string) { const { filter, onChange, trim, name, dynamicKey } = props.config as any; - let value: FormValue | number | string = filterHandler(filter, v); + let value: FormValue | number | string = v; - value = (await changeHandler(onChange, value)) ?? value; - value = trimHandler(trim, value) ?? value; + try { + value = filterHandler(filter, v); + value = (await changeHandler(onChange, value)) ?? value; + value = trimHandler(trim, value) ?? value; + } catch (e) { + console.error(e); + } // field内容下包含field-link时,model===value, 这里避免循环引用 if ((name || name === 0) && props.model !== value && (v !== value || props.model[name] !== value)) {