Просмотр исходного кода

fix: 修复重复选择后选项空白问题

fan 2 лет назад
Родитель
Сommit
b20fa35c5b
1 измененных файлов с 20 добавлено и 15 удалено
  1. 20 15
      src/views/biz/archives/diagnosisHistory/FormModal.vue

+ 20 - 15
src/views/biz/archives/diagnosisHistory/FormModal.vue

@@ -635,6 +635,12 @@
   }
   // 回调
   async function callEditChange({ record }) {
+    console.log('🚀 ~ file: FormModal.vue:638 ~ callEditChange ~ record:', record);
+    console.log(
+      '🚀 ~ file: FormModal.vue:648 ~ callEditChange ~ tableRecordType.value:',
+      tableRecordType.value,
+    );
+
     if (
       record.type == DiagnosisEnum.complications_field ||
       record.type == DiagnosisEnum.clinic_field ||
@@ -642,27 +648,26 @@
       record.type == DiagnosisEnum.ckd_field ||
       record.type == DiagnosisEnum.allergic_field
     ) {
-      if (tableRecordType.value != record.contentType) {
+      if (tableRecordType.value != record.contentType || !record.nameOptions.length) {
         tableRecordType.value = record.contentType;
         let res = [];
         res = await listDictModel({ dictCode: record.contentType });
         record.nameOptions = res;
         record.name = [];
+      }
+      if (record.name.length > 3) {
+        // createMessage.error('每次最多选择4个');
+        record.nameOptions = record.nameOptions.map(ele => {
+          if (!record.name.includes(ele.value)) {
+            ele.disabled = true;
+          }
+          return ele;
+        });
       } else {
-        if (record.name.length > 3) {
-          // createMessage.error('每次最多选择4个');
-          record.nameOptions = record.nameOptions.map(ele => {
-            if (!record.name.includes(ele.value)) {
-              ele.disabled = true;
-            }
-            return ele;
-          });
-        } else {
-          record.nameOptions = record.nameOptions.map(ele => {
-            ele.disabled = false;
-            return ele;
-          });
-        }
+        record.nameOptions = record.nameOptions.map(ele => {
+          ele.disabled = false;
+          return ele;
+        });
       }
     }
   }