Sfoglia il codice sorgente

优化对象新旧值比较

QuKatie 3 anni fa
parent
commit
0209ee76d3

+ 4 - 18
src/util/contrastData.js

@@ -1,28 +1,14 @@
 //比较对象的值
 export function contrastObj(newval, oldval) {
   let reg = /^[A-Za-z]+$/;
-  for (let newitem in newval) {
-    if (Object.keys(oldval).length == 0) {
-      if (newval[newitem]) {
-        return true
-      }
-    }
-    for (let olditem in oldval) {
-      if (!reg.test(newitem)) {
-        delete newval.newitem
-      }
-      if (!reg.test(oldval)) {
-        delete oldval.olditem
-      }
-      if (newitem == olditem) {
-        if (newval[newitem] != oldval[olditem]) {
-          return true
-        }
-      }
+  for (let key in newval) {
+    if (reg.test(key) && (newval[key] != oldval[key] && (newval[key] || oldval[key]))) {
+      return true
     }
   }
   return false
 }
+
 //比较数组的值
 export function contrastList(newlist, oldlist) {
   if (newlist.length != oldlist.length) {

+ 1 - 7
src/views/exportTrade/customerInquiry/detailsPage.vue

@@ -1020,14 +1020,8 @@ export default {
     //返回列表
     backToList() {
       let orderFeesList = this.$refs.feeInfo.submitData();
-      let form = this.form;
-      if (form.orderStatus == "录入" && this.oldform.orderStatus == "录入") {
-        delete form.orderStatus;
-        delete form.$orderStatus;
-        delete this.oldform.orderStatus;
-      }
       if (
-        contrastObj(form, this.oldform) ||
+        contrastObj(this.form, this.oldform) ||
         contrastList(this.data, this.olddata) ||
         contrastList(orderFeesList, this.oldorderFeesList)
       ) {

+ 1 - 10
src/views/exportTrade/invoice/detailsPage.vue

@@ -758,17 +758,8 @@ export default {
     backToList() {
       let orderFeesList = this.$refs.feeInfo.submitData();
       let orderFilesList = this.$refs.uploadFile.submitData();
-      let form = this.form
       if (
-        form.deliveryStatus == "录入" &&
-        this.oldform.deliveryStatus == "录入"
-      ) {
-        delete form.deliveryStatus;
-        delete form.$deliveryStatus;
-        delete this.oldform.deliveryStatus;
-      }
-      if (
-        contrastObj(form, this.oldform) ||
+        contrastObj(this.form, this.oldform) ||
         contrastList(this.data, this.olddata) ||
         contrastList(orderFeesList, this.oldorderFeesList) ||
         contrastList(orderFilesList, this.oldorderFilesList)