From e3ba92f7ec0b5a5b245968310bd48f0e34a78c37 Mon Sep 17 00:00:00 2001
From: guoshilong <123456>
Date: Tue, 07 Mar 2023 17:24:58 +0800
Subject: [PATCH] 火灾补录,修复当选择对应火灾编号时,再次输入不存在的火灾编号时产生的问题
---
src/views/fire/fireSupplement.vue | 38 +++++++++++++++++++++++++++++---------
1 files changed, 29 insertions(+), 9 deletions(-)
diff --git a/src/views/fire/fireSupplement.vue b/src/views/fire/fireSupplement.vue
index da4b8dd..5d71423 100644
--- a/src/views/fire/fireSupplement.vue
+++ b/src/views/fire/fireSupplement.vue
@@ -16,6 +16,7 @@
placeholder="请输入火灾编号"
:trigger-on-focus="false"
@select="handleSelect"
+ @blur="inputBlur"
></el-autocomplete>
</template>
</avue-form>
@@ -601,6 +602,7 @@
mapLocation:{
isDetail:true
},
+ fireList:[],
}
},
created() {
@@ -760,8 +762,17 @@
isDetail: true,
location:[this.form.lon,this.form.lat]
}
+ }else {
+ getAll().then(res=>{
+ if (res.data.code == 200){
+ let data = res.data.data
+ data.forEach(e=>{
+ e.value = e.no
+ })
+ this.fireList = data
+ }
+ })
}
-
},
//返回列表页
goToList() {
@@ -770,14 +781,11 @@
},
//自动补全
querySearch(queryString, cb){
- getAll({no:queryString}).then(res=>{
- if (res.data.code == 200){
- let data = res.data.data
- data.forEach(e=>{
- e.value = e.no
- })
- cb(data)
- }
+ this.$nextTick(()=>{
+ let filterArray = this.fireList.filter(e => {
+ return e.no.indexOf(queryString) != -1
+ })
+ cb(filterArray)
})
},
//选择事件
@@ -788,6 +796,18 @@
location:[this.form.lon,this.form.lat]
}
this.$refs.olMap.addPoint(this.mapLocation.location)
+ },
+ inputBlur(e){
+ let value = e.target.value
+ let filterArray = this.fireList.filter(e => {
+ return e.no.indexOf(value) != -1
+ })
+ if (filterArray.length>0){
+ this.handleSelect(filterArray[0])
+ }else {
+ this.$refs.form.resetForm()
+ this.$refs.olMap.clearDraw()
+ }
}
},
destroyed() {
--
Gitblit v1.9.3