详解vue修改elementUI的分页组件视图没更新问题


Posted in Javascript onNovember 13, 2020

今天遇到一个小问题平时没留意,el-pagination这个分页组件有一个属性是current-page当前页。

今天想在methods里面手动修改他绑定的变量从而达到修改页码的效果,结果发现分页组件视图并没有渲染,还是停留在原本的页码处。

然后想了想,想起了.sync这个语法糖,让数据进行双向绑定。

直接上修改的代码看看

<el-pagination
  :current-page.sync="currentPage"
  :page-sizes="[10, 30, 50]"
  :page-size="pageSize"
  :total="total"
  layout="total, sizes, prev, pager, next, jumper"
  @size-change="handleSizeChange"
  @current-change="handleCurrentChange"
/>
refresh () {
 this.handleCurrentChange(1)
 this.currentPage = 1
}

具体原因我想了一下,可能是因为修改this.currentPage,分页组件没办法通知父组件视图更新,所以添加了.sync修饰符使得子组件能和父组件进行沟通,从而实现双向绑定,父组件获取到更新后的值重新渲染页面。

element-ui 接口返回有数据但是视图没有更新

前言:一般情况下,接口有数据返回,但相应的视图不更新,只会有两种情况:
1.在这个数据要更新之前有报错或者有不严谨的判断。
2.vue 对象、数组不能深层监听。

一、排查有无不严谨的判断和报错。

二、vue 对象不允许在已创建的的实例上动态添加新的根级响应式属性 。(参考vue官网)
如果非要这么做的话,我们可以使用 this.$set()。

this.$set() 可以接收三个参数 1. 要绑字的数据。 2. 要添加或修改的属性名称。 3. 要赋的值

this.$set(this.projectList, 'projectName', 'chenxuemin')

三、手动更新视图

它可以影响到本实例及本实中的 slot 插槽内容

this.$forceUpdate() // vm.$forceUpdate()

到此这篇关于详解vue修改elementUI的分页组件视图没更新问题的文章就介绍到这了,更多相关vue element分页组件视图内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Javascript 相关文章推荐
修改jQuery Validation里默认的验证方法
Feb 14 Javascript
JS事件在IE与FF中的区别详细解析
Nov 20 Javascript
JavaScript中判断原生函数检查function是否是原生代码
Sep 09 Javascript
SpringMVC restful 注解之@RequestBody进行json与object转换
Dec 10 Javascript
validationEngine 表单验证插件使用实例代码
Jun 15 Javascript
Vue页面骨架屏的实现方法
May 22 Javascript
在iFrame子页面里实现模态框的方法
Aug 17 Javascript
JavaScript基础之静态方法和实例方法分析
Dec 26 Javascript
简述vue-cli中chainWebpack的使用方法
Jul 30 Javascript
js canvas实现俄罗斯方块
Oct 11 Javascript
使用vant的地域控件追加全部选项
Nov 03 Javascript
vue3弹出层V3Popup实例详解
Jan 04 Vue.js
Vue实现boradcast和dispatch的示例
Nov 13 #Javascript
Vue 列表页带参数进详情页的操作(router-link)
Nov 13 #Javascript
Vue 3.0中jsx语法的使用
Nov 13 #Javascript
vue点击Dashboard不同内容 跳转到同一表格的实例
Nov 13 #Javascript
解决iView Table组件宽度只变大不变小的问题
Nov 13 #Javascript
PHP 502bad gateway原因及解决方案
Nov 13 #Javascript
解决iview table组件里的 固定列 表格不自适应的问题
Nov 13 #Javascript
You might like
PHP学习之数组值的操作
2011/04/17 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
php将print_r处理后的数据还原为原始数组的解决方法
2016/11/02 PHP
PHP去除字符串最后一个字符的三种方法实例
2017/03/01 PHP
ThinkPHP实现静态缓存和动态缓存示例代码
2017/05/02 PHP
Laravel框架表单验证操作实例分析
2019/09/30 PHP
css图片自适应大小
2007/11/28 Javascript
javascript实现信息的显示和隐藏如注册页面
2013/12/03 Javascript
jQuery简单实现禁用右键菜单
2015/03/10 Javascript
有关文件上传 非ajax提交 得到后台数据问题
2016/10/12 Javascript
AngularJS入门教程之与服务器(Ajax)交互操作示例【附完整demo源码下载】
2016/11/02 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
详解AngularJS中的表单验证(推荐)
2016/11/17 Javascript
javascript另类方法实现htmlencode()与htmldecode()函数实例分析
2016/11/17 Javascript
HTML页面定时跳转方法解析(2种任选)
2016/12/22 Javascript
Node.js中的http请求客户端示例(request client)
2017/05/04 Javascript
开源一个微信小程序仪表盘组件过程解析
2019/07/30 Javascript
Vue快速实现通用表单验证的示例代码
2020/01/09 Javascript
antdesign-vue结合sortablejs实现两个table相互拖拽排序功能
2021/01/08 Vue.js
原生JavaScript实现购物车
2021/01/10 Javascript
[58:58]2018DOTA2亚洲邀请赛 4.4 淘汰赛 TNC vs VG 第二场
2018/04/05 DOTA
Python列表计数及插入实例
2014/12/17 Python
在Django框架中编写Context处理器的方法
2015/07/20 Python
python+pillow绘制矩阵盖尔圆简单实例
2018/01/16 Python
对python中Json与object转化的方法详解
2018/12/31 Python
解决Python设置函数调用超时,进程卡住的问题
2019/08/08 Python
Python中import导入不同目录的模块方法详解
2020/02/18 Python
Win 10下Anaconda虚拟环境的教程
2020/05/18 Python
Python如何发送与接收大型数组
2020/08/07 Python
如何基于Python按行合并两个txt
2020/11/03 Python
CSS3的calc()做响应模式布局的实现方法
2017/09/06 HTML / CSS
美国医生配方营养补充剂供应商:Healthy Directions
2019/07/10 全球购物
三年级科学教学反思
2014/01/29 职场文书
法人委托书范本
2014/04/04 职场文书
婚内分居协议书范文
2014/11/26 职场文书
旷工检讨书1000字
2015/01/01 职场文书