浅谈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 相关文章推荐
jquery select多选框的左右移动 具体实现代码
Jul 03 Javascript
jquery判断单选按钮radio是否选中的方法
May 05 Javascript
jQuery取消ajax请求的方法
Jun 09 Javascript
IE6兼容透明背景图片及解决方案
Aug 19 Javascript
JavaScript实现阿拉伯数字和中文数字互相转换
Jun 12 Javascript
微信小程序 实现列表项滑动显示删除按钮的功能
Apr 13 Javascript
js实现登录与注册界面
Nov 01 Javascript
详解ES6 系列之异步处理实战
Oct 26 Javascript
javascript数据类型中的一些小知识点(推荐)
Apr 18 Javascript
vue element-ui实现input输入框金额数字添加千分位
Dec 29 Javascript
JS实现秒杀倒计时特效
Jan 02 Javascript
详解JavaScript的this指向和绑定
Sep 08 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&MYSQL分页原理及实现
2007/01/02 PHP
Dedecms V3.1 生成HTML速度的优化办法
2007/03/18 PHP
PHP 数组基础知识小结
2010/08/20 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
2011/08/09 PHP
php笔记之:初探PHPcms模块开发介绍
2013/04/26 PHP
PHP远程采集图片详细教程
2014/07/01 PHP
php操作mongodb封装类与用法实例
2018/09/01 PHP
TopList标签和JavaScript结合两例
2007/08/12 Javascript
javascript下高性能字符串连接StringBuffer类
2010/08/16 Javascript
两种方法实现文本框输入内容提示消失
2013/03/17 Javascript
jQuery实现响应浏览器缩放大小并改变背景颜色
2014/10/31 Javascript
浅谈javascript的分号的使用
2015/05/12 Javascript
jQuery实现简洁的轮播图效果实例
2016/09/07 Javascript
JS利用cookies设置每隔24小时弹出框
2017/04/20 Javascript
vue元素实现动画过渡效果
2017/07/01 Javascript
js实现简易聊天对话框
2017/08/17 Javascript
JS实现简单表格排序操作示例
2017/10/07 Javascript
Vue 组件修改根实例的数据的方法
2019/04/02 Javascript
vue 对象添加或删除成员时无法实时更新的解决方法
2019/05/01 Javascript
p5.js绘制创意自画像
2019/11/04 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
Python实现mysql数据库更新表数据接口的功能
2017/11/19 Python
python使用tensorflow保存、加载和使用模型的方法
2018/01/31 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
Python基于机器学习方法实现的电影推荐系统实例详解
2019/06/25 Python
python常用库之NumPy和sklearn入门
2019/07/11 Python
如何基于Python + requests实现发送HTTP请求
2020/01/13 Python
韩国三星旗下的一家超市连锁店:Home Plus
2016/07/30 全球购物
日本著名的平价时尚女性购物网站:Fifth
2016/08/24 全球购物
饿了么订餐官网:外卖、网上订餐
2019/06/28 全球购物
《桃林那间小木屋》教学反思
2014/05/01 职场文书
党支部对照检查材料
2014/08/25 职场文书
导游词之青岛崂山
2019/12/27 职场文书
Jupyter Notebook 如何修改字体和大小以及更改字体样式
2021/06/03 Python
yyds什么意思?90后已经听不懂00后讲话了……
2022/02/03 杂记
springboot创建的web项目整合Quartz框架的项目实践
2022/06/21 Java/Android