Browse Source

修复bug:当modelData.data的值从外部修改以后,修改执行 watch->'modelData.data' 中的 this.displayValue = ? 方法
执行完成以后,watch->displayValue 又会执行,会触发valueChanged事件,这会导致 callout/calloutjs 会被多次执行。
所以在触发 valueChanged 的之前,先判断currentValue与modelData中的值是否相等,
如果相等,说明是外部修改了modelData,然后执行了 watch->'modelData.data' 方法修改了 displayValue,此时不触发valueChanged事件。
如果不相等,说明是DOM修改了,触发修改了displayValue,此时触发valueChanged事件。

YangZhiJie 2 năm trước cách đây
mục cha
commit
674ec704f1

+ 9 - 9
package-lock.json

@@ -1,12 +1,12 @@
 {
   "name": "client-base-v4",
-  "version": "4.0.14",
+  "version": "4.0.17",
   "lockfileVersion": 2,
   "requires": true,
   "packages": {
     "": {
       "name": "client-base-v4",
-      "version": "4.0.14",
+      "version": "4.0.17",
       "devDependencies": {
         "@babel/core": "^7.17.5",
         "@babel/eslint-parser": "^7.17.0",
@@ -43,7 +43,7 @@
         "dayjs": "^1.11.6",
         "dingtalk-jsapi": "^2.10.3",
         "moment": "^2.29.4",
-        "pc-component-v3": "1.0.72",
+        "pc-component-v3": "1.0.74",
         "qrcode": "^1.5.3",
         "uuid": "^8.3.2",
         "v-tooltip": "^4.0.0-beta.17",
@@ -6946,9 +6946,9 @@
       }
     },
     "node_modules/pc-component-v3": {
-      "version": "1.0.72",
-      "resolved": "http://wuzhixin.vip:4873/pc-component-v3/-/pc-component-v3-1.0.72.tgz",
-      "integrity": "sha512-KTmGg86ifwvJ+sNJ96bqmNj+1F+mHvaaHy+Q0oR5pUHcJL9naOnQGx0ktV2Xf4Xg033RFs4B0XchX/AIc5oDVg==",
+      "version": "1.0.74",
+      "resolved": "http://wuzhixin.vip:4873/pc-component-v3/-/pc-component-v3-1.0.74.tgz",
+      "integrity": "sha512-25Jg/2MimY1ibD0+0PCAKU08tE2Jvp8RUywA64kJnteHvMHVce7qllv/O7qE2bUmjpYJKfBL9AGes9wz/0sGwg==",
       "peer": true,
       "peerDependencies": {
         "ant-design-vue": "^3.2.15",
@@ -14694,9 +14694,9 @@
       "dev": true
     },
     "pc-component-v3": {
-      "version": "1.0.72",
-      "resolved": "http://wuzhixin.vip:4873/pc-component-v3/-/pc-component-v3-1.0.72.tgz",
-      "integrity": "sha512-KTmGg86ifwvJ+sNJ96bqmNj+1F+mHvaaHy+Q0oR5pUHcJL9naOnQGx0ktV2Xf4Xg033RFs4B0XchX/AIc5oDVg==",
+      "version": "1.0.74",
+      "resolved": "http://wuzhixin.vip:4873/pc-component-v3/-/pc-component-v3-1.0.74.tgz",
+      "integrity": "sha512-25Jg/2MimY1ibD0+0PCAKU08tE2Jvp8RUywA64kJnteHvMHVce7qllv/O7qE2bUmjpYJKfBL9AGes9wz/0sGwg==",
       "peer": true,
       "requires": {}
     },

+ 4 - 4
src/window/tabFormView/TabFormFieldEdit.vue

@@ -528,12 +528,12 @@ export default {
     getModelDataFieldDisplayValue : function(){
       if(this.modelData == null 
           || this.field == null
-          || this.modelData[this.field.fieldName] == undefined
-          || this.modelData[this.field.fieldName].displayValue == undefined
-          || this.modelData[this.field.fieldName].displayValue.length < this.field.entityFieldIndex + 1){
+          || this.modelData.data[this.field.fieldName] == undefined
+          || this.modelData.data[this.field.fieldName].displayValue == undefined
+          || this.modelData.data[this.field.fieldName].displayValue.length < this.field.entityFieldIndex + 1){
         return null;
       }
-      return this.modelData[this.field.fieldName].displayValue[this.field.entityFieldIndex];
+      return this.modelData.data[this.field.fieldName].displayValue[this.field.entityFieldIndex];
     },
 
 

+ 3 - 3
src/window/tabGridView/CellItem.vue

@@ -435,11 +435,11 @@ export default {
     getModelDataFieldDisplayValue : function(){
       if(this.modelData == null 
           || this.fieldItem == null 
-          || this.modelData[this.fieldItem.fieldName] == null 
-          || this.modelData[this.fieldItem.fieldName].displayValue == null){
+          || this.modelData.data[this.fieldItem.fieldName] == null 
+          || this.modelData.data[this.fieldItem.fieldName].displayValue == null){
         return null;
       }
-      return this.modelData[this.fieldItem.fieldName].displayValue[this.fieldItem.entityFieldIndex];
+      return this.modelData.data[this.fieldItem.fieldName].displayValue[this.fieldItem.entityFieldIndex];
     },