浅谈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 相关文章推荐
js检测客户端不是firefox则提示下载
Apr 07 Javascript
jquery的冒泡事件的阻止与允许(三种实现方法)
Feb 01 Javascript
jquery与prototype框架的详细对比
Nov 21 Javascript
javascript中的this详解
Dec 08 Javascript
node.js中的fs.lchmodSync方法使用说明
Dec 16 Javascript
15位和18位身份证JS校验的简单实例
Jul 18 Javascript
微信小程序 向左滑动删除功能的实现
Mar 10 Javascript
详解webpack和webpack-simple中如何引入css文件
Jun 28 Javascript
基于js中的原型(全面讲解)
Sep 19 Javascript
微信小程序学习笔记之登录API与获取用户信息操作图文详解
Mar 29 Javascript
node.js制作一个简单的登录拦截器
Feb 10 Javascript
JS如何实现手机端输入验证码效果
May 13 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中大于2038年时间戳的问题处理方案
2015/03/03 PHP
php使用GD创建保持宽高比缩略图的方法
2015/04/17 PHP
PHP strip_tags() 去字符串中的 HTML、XML 以及 PHP 标签的函数
2016/05/22 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
PHP getNamespaces()函数讲解
2019/02/03 PHP
关于URL中的特殊符号使用介绍
2011/11/03 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
浅谈vue项目如何打包扔向服务器
2018/05/08 Javascript
了解前端理论:rscss和rsjs
2019/05/23 Javascript
微信小程序实现页面跳转传递参数(实体,对象)
2019/08/12 Javascript
javascript实现抢购倒计时程序
2019/08/26 Javascript
vue3.0 自适应不同分辨率电脑的操作
2021/02/06 Vue.js
[04:52]DOTA2亚洲邀请赛附加赛 TOP10精彩集锦
2015/01/29 DOTA
python网络编程之读取网站根目录实例
2014/09/30 Python
python3实现ftp服务功能(客户端)
2017/03/24 Python
Python中支持向量机SVM的使用方法详解
2017/12/26 Python
python实现员工管理系统
2018/01/11 Python
Python3使用turtle绘制超立方体图形示例
2018/06/19 Python
Python读取数据集并消除数据中的空行方法
2018/07/12 Python
Python中如何使用if语句处理列表实例代码
2019/02/24 Python
Python中turtle库的使用实例
2019/09/09 Python
python selenium 执行完毕关闭chromedriver进程示例
2019/11/15 Python
Python使用QQ邮箱发送邮件实例与QQ邮箱设置详解
2020/02/18 Python
美国知名的家庭连锁百货商店:Boscov’s
2017/07/27 全球购物
会计专业毕业自荐书范文
2014/02/08 职场文书
项目投资意向书
2014/04/01 职场文书
优秀护士先进事迹
2014/05/08 职场文书
文明生主要事迹
2014/05/25 职场文书
服务宗旨标语
2014/07/01 职场文书
超市促销活动总结
2014/07/01 职场文书
销售目标责任书
2014/07/23 职场文书
幼儿园校车安全责任书
2015/05/08 职场文书
战友聚会致辞
2015/07/28 职场文书
Python连接Postgres/Mysql/Mongo数据库基本操作大全
2021/06/29 Python
vue如何使用模拟的json数据查看效果
2022/03/31 Vue.js
基于Python实现射击小游戏的制作
2022/04/06 Python