浅谈vue中resetFields()使用注意事项


Posted in Javascript onAugust 12, 2020

this.$refs.frmAdd.resetFields();这句在使用中有些时候不会有啥问题,但有时候就会出问题,而且特别难缠,我原来这么使用就没问题啊,怎么这里就会有问题,查找各种资料总结得出:

第一种情况:放在弹框刚准备弹出的时候

浅谈vue中resetFields()使用注意事项

第二种情况:放在弹框关闭方法@close中

发现上次报红框的地方仍然在,并未重置

最终解决方案:

this.KaTeX parse error: Expected '}', got 'EOF' at end of input: … this.refs.frmAdd.resetFields(); });

可以放在准备开始弹出弹框时的方法中

补充知识:vue-element-ui 中 form resetFields并没有清空表单

问题背景

vue-element-ui 中 form中有个清空表单的方法,即假如给表单一个ref='form', 则清空表单的方法为this.$refs['form'].resetFields()

可当我在dialog组件中用这个方法的时候,这就出现问题了,居然清空不了~~~~~

问题所在

问题的本质是因为你编辑时,第一次打开dialog的时候给表单绑定的form赋值了,这时候这个form的初始值就变成了你所赋值的值,所以resetFields的时候,会将form对应的每个值重置到初始值,这时候的初始值就是你编辑时赋值的那个值, 而不是在data里声明的初始值,

如表单绑定的值为:

form: {
 age: 0,
 name: ''
}

但在你打开dialog编辑的时候,你又对它进行赋值,如

this.form = {
 age:23,
 name:"lala"
}

这个时候form表单会默认这个新赋的值为初始值

解决

解决方式是,等dialog已经初始化之后再给form赋值,也就是

this.$nextTick(() => { // 这里开始赋值 this.form.xxx = xxx; })

以上这篇浅谈vue中resetFields()使用注意事项就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript Math对象
Aug 13 Javascript
html数组字符串拼接的最快方法
Sep 16 Javascript
JSQL  一个 web DB 的封装
May 05 Javascript
浅谈JavaScript字符集
May 22 Javascript
json中换行符的处理方法示例介绍
Jun 10 Javascript
js读写json文件实例代码
Oct 21 Javascript
JQuery中DOM实现事件移除的方法
Jun 13 Javascript
11种ASP连接数据库的方法
Sep 18 Javascript
jQuery动画_动力节点节点Java学院整理
Jul 04 jQuery
vue 本地环境跨域请求proxyTable的方法
Sep 19 Javascript
微信小程序自定义toast组件的方法详解【含动画】
May 11 Javascript
通过实例解析chrome如何在mac环境中安装vue-devtools插件
Jul 10 Javascript
VUE 实现element upload上传图片到阿里云
Aug 12 #Javascript
快速解决Vue、element-ui的resetFields()方法重置表单无效的问题
Aug 12 #Javascript
vue-router 2.0 跳转之router.push()用法说明
Aug 12 #Javascript
详谈Vue.js框架下main.js,App.vue,page/index.vue之间的区别
Aug 12 #Javascript
AngularJs的$http发送POST请求,php无法接收Post的数据问题及解决方案
Aug 13 #Javascript
VsCode里的Vue模板的实现
Aug 12 #Javascript
typescript配置alias的详细步骤
Aug 12 #Javascript
You might like
什么情况下可以不写PHP的闭合标签“?>”
2014/08/28 PHP
ThinkPHP入口文件设置及相关注意事项分析
2014/12/05 PHP
PHP校验15位和18位身份证号的类封装
2018/11/07 PHP
javascript之水平横向滚动歌词同步的应用
2007/05/07 Javascript
指定位置如果有图片显示图片,无图片显示广告的JS
2010/06/05 Javascript
IE6/7/8中Option元素未设value时Select将获取空字符串
2011/04/07 Javascript
js获取某月的最后一天日期的简单实例
2013/06/22 Javascript
JavaScript Math.ceil() 函数使用介绍
2013/12/11 Javascript
jQuery在线选座位插件seat-charts特效代码分享
2015/08/27 Javascript
详解axios在node.js中的post使用
2017/04/27 Javascript
微信小程序实现滚动消息通知
2018/02/02 Javascript
Vuex入门到上手教程
2018/06/20 Javascript
bootstrap动态调用select下拉框的实例代码
2018/08/09 Javascript
vue初始化动画加载的实例
2018/09/01 Javascript
Vue 路由间跳转和新开窗口的方式(query、params)
2019/12/25 Javascript
jquery插件懒加载的示例
2020/10/24 jQuery
用vue设计一个日历表
2020/12/03 Vue.js
[59:30]VG vs LGD 2019国际邀请赛淘汰赛 胜者组 BO3 第二场 8.22
2019/09/05 DOTA
python3使用tkinter实现ui界面简单实例
2014/01/10 Python
python3使用SMTP发送HTML格式邮件
2018/06/19 Python
Python访问MongoDB,并且转换成Dataframe的方法
2018/10/15 Python
python基于paramiko将文件上传到服务器代码实现
2019/07/08 Python
Windows10下 python3.7 安装 facenet的教程
2019/09/10 Python
Python代码需要缩进吗
2020/07/01 Python
CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码
2021/02/24 HTML / CSS
YSL圣罗兰美妆美国官网:Yves Saint Lauret US
2016/11/21 全球购物
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
妇产医师自荐信
2014/01/29 职场文书
绿色环保演讲稿
2014/05/10 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
汽车转让协议书
2015/01/29 职场文书
2015年小学校长工作总结
2015/05/19 职场文书
四风之害观后感
2015/06/09 职场文书
导游词之江南园林狮子林
2019/09/16 职场文书
详解python字符串驻留技术
2021/05/21 Python
Python OpenCV实现图形检测示例详解
2022/04/08 Python