一般这样写,输入框就能清空了
<el-input v-model="form.custCodeEnd" clearable @clear="clear('custCodeEnd')" />
clear(key) {
this.queryParams[key] = ''
},
但是遇到了奇怪的现象,没有父子组件的嵌套,log打印值已经变成空的,但是输入框的还在,这个时候想到是不是要用this. s e t 刷新下数据,或者 t h i s . set刷新下数据,或者this. set刷新下数据,或者this.nexttick(),都试了还是不行
解决方法:
在data中定义的form对象里,如下定义
form:{
custCodeEnd:''
}
可能是因为form里都是空的,找不到这个字段,不知道要清空哪一项
然后又遇到了一个父子组件的,子组件是表单,在子组件中像这么这样写的话,相当于在子组件里改变值,逆向改变不行,那就去父组件改变
<el-input v-model="form.custCodeEnd" clearable @clear="clear('custCodeEnd')" />
clear(key) {
this.$set('clear', key)
},
父组件的子组件上接收下
<QueryForm
@clear="clear"
></QueryForm>
clear(key) {
this.form[key] = ''
},