lxf 1 жил өмнө
parent
commit
5a1fb25cf3

+ 16 - 10
src/components/selectCity/index.vue

@@ -1,6 +1,6 @@
 <template>
 <template>
   <div class="select-city">
   <div class="select-city">
-    <el-select clearable filterable allow-create :placeholder="placeholder" @change="getCityData" v-model="showModel" style="width: 100%">
+    <el-select clearable filterable allow-create :placeholder="placeholder" @change="getCityData" @clear="getCityData" v-model="showModel" style="width: 100%">
       <el-option v-for="item in data" :label="item.name" :value="item.id"> </el-option>
       <el-option v-for="item in data" :label="item.name" :value="item.id"> </el-option>
     </el-select>
     </el-select>
   </div>
   </div>
@@ -38,23 +38,29 @@ defineProps({
 //监听modelValue的变化
 //监听modelValue的变化
 watch(
 watch(
   formData.value,
   formData.value,
-  (val) => {
-    if (formData.value[proxy.addressId || "provinceId"] === "-1") {
-      formData.value[proxy.addressId || "provinceId"] = "";
-      formData.value[proxy.addressName || "provinceName"] = "";
-    }
-    // console.log(formData.value[proxy.addressId || 'provinceId'],formData.value[proxy.addressName || 'provinceName'])
+  () => {
     if (!formData.value[proxy.addressId || "provinceId"] && !formData.value[proxy.addressName || "provinceName"]) {
     if (!formData.value[proxy.addressId || "provinceId"] && !formData.value[proxy.addressName || "provinceName"]) {
-      showModel.value = "";
+      if (formData.value[proxy.addressId || "provinceId"] === "-1") {
+        showModel.value = "";
+        formData.value[proxy.addressId || "provinceId"] = "";
+        formData.value[proxy.addressName || "provinceName"] = "";
+      } else {
+        showModel.value = "";
+      }
     } else {
     } else {
-      showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+      if (formData.value[proxy.addressId || "provinceId"] === "-1") {
+        showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+        formData.value[proxy.addressId || "provinceId"] = "";
+        formData.value[proxy.addressName || "provinceName"] = "";
+      } else {
+        showModel.value = formData.value[proxy.addressId || "provinceId"] || formData.value[proxy.addressName || "provinceName"];
+      }
     }
     }
   },
   },
   {
   {
     immediate: true,
     immediate: true,
   }
   }
 );
 );
-
 const getCityData = (val) => {
 const getCityData = (val) => {
   let isAddCity = true;
   let isAddCity = true;
   //判断val是否在data里面
   //判断val是否在data里面