From 017bf5e60f27f7cccb06eb6d2430283557638664 Mon Sep 17 00:00:00 2001 From: dengbf Date: Wed, 24 Jan 2024 10:48:41 +0800 Subject: [PATCH] =?UTF-8?q?-=20[=E4=BF=AE=E5=A4=8D]=20=E7=9F=A9=E9=98=B5?= =?UTF-8?q?=E6=95=B0=E6=8D=AE(object)=E5=AF=B9=E6=AF=94=E4=B8=8D=E7=94=9F?= =?UTF-8?q?=E6=95=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/resources/plugins/TsForm/TsFormCheckbox.vue | 3 ++- src/resources/plugins/TsForm/TsFormRadio.vue | 3 ++- src/resources/plugins/TsForm/TsFormSelect.vue | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/src/resources/plugins/TsForm/TsFormCheckbox.vue b/src/resources/plugins/TsForm/TsFormCheckbox.vue index 7de82df5..85218f42 100755 --- a/src/resources/plugins/TsForm/TsFormCheckbox.vue +++ b/src/resources/plugins/TsForm/TsFormCheckbox.vue @@ -261,7 +261,8 @@ export default { }, watch: { value(newValue, oldValue) { - if (JSON.stringify(newValue) != JSON.stringify(this.currentValue)) { + let isSame = this.$utils.isSame(this.handleCurrentValue(newValue), this.currentValue); + if (!isSame) { this.currentValue = this.handleCurrentValue(this.$utils.deepClone(newValue)) || []; this.validMesage = ''; this.setSelectList(); diff --git a/src/resources/plugins/TsForm/TsFormRadio.vue b/src/resources/plugins/TsForm/TsFormRadio.vue index 35690053..896b8d2f 100755 --- a/src/resources/plugins/TsForm/TsFormRadio.vue +++ b/src/resources/plugins/TsForm/TsFormRadio.vue @@ -259,7 +259,8 @@ export default { }, watch: { value(newValue, oldValue) { - if (newValue != this.currentValue) { + let isSame = this.$utils.isSame(this.handleCurrentValue(newValue), this.currentValue); + if (!isSame) { this.currentValue = this.handleCurrentValue(newValue); this.validMesage = ''; this.setSelectList(); diff --git a/src/resources/plugins/TsForm/TsFormSelect.vue b/src/resources/plugins/TsForm/TsFormSelect.vue index 8d2b8346..9a452014 100755 --- a/src/resources/plugins/TsForm/TsFormSelect.vue +++ b/src/resources/plugins/TsForm/TsFormSelect.vue @@ -1450,7 +1450,7 @@ export default { watch: { value: { handler(newValue, oldValue) { - let isSame = this.$utils.isSame(newValue, this.currentValue); + let isSame = this.$utils.isSame(this.handleCurrentValue(newValue), this.currentValue); // if ((this.multiple && JSON.stringify(newValue) == JSON.stringify(this.currentValue)) || (!this.multiple && newValue === this.currentValue)) { // isSame = true; // } -- Gitee