网站首页 > 博客文章 正文
当操作页面时候,特别是增删改操作之后,数据会有所改变,这个时候我们希望组件中的数据要和最新数据一致,就需要重新更新渲染。以下是针对几种不同情况下方式:
一.子页面调用接口后重新渲染
1.使用ref方式
父组件中用ref=“xxx” 来声明子组件,然后通过在父组件值改变的地方来调用子组件中的方法this.$refs.xxx.getData()来获取最新数据,完成重新渲染。
2.使用watch监听父传子数据
当父子传参使用props的方式,此时若父页面数据变化,更改传递给子组件的参数。
在子页面进行watch监听父页面传过来的值。getData查询最新数据完成更新。
注意:以上两种方式是通过getData查询结果后通过v-model双向绑定数据进行更新渲染页面。
二.需要子页面重新渲染才更新数据
这种情况一般出现:在子组件中的created或者mounted函数只会执行一次,在父组件添加数据成功之后,没有进行组件的切换,因此子组件不会重新渲染并且更新数据。
1.强制刷新页面(不推荐)
(1)原地刷新页面
this.$router.go(0) //根据路由重新定向到当前页
或者
location.reload() //重新加载当前页
(2)空白页面
先跳转到空白页马上再回到原页面
2.使用v-if方式
v-if=“status”
v-if是动态地向DOM树中添加或删除DOM元素节点;对子组件设置v-if,它会重新跑一遍子组件的生命周期进程。
3.采用key的方式
:key=“number”
当key的value值发生变化时,子组件会重新渲染。使子组件完整地触发生命周期钩子。完成页面的数据更新。
猜你喜欢
- 2024-10-28 功能问题:如何解决跳同一路由组件时页面不变?
- 2024-10-28 Vue3.0来龙去脉更新历程(vue3最新版本)
- 2024-10-28 vue3移除了$on,$off ,$once(vue 移除list中的项)
- 2024-10-28 图解 Vue 异步更新原理(vuex异步)
- 2024-10-28 VUE又要更新了,这框架真这么难学吗?
- 2024-10-28 Vue 3.3.6 发布了,得益于WeakMap,它更快了
- 2024-10-28 新闻在线全栈开发实战(vue3+springboot)之五-数据库信息的更新
- 2024-10-28 vue引入element-ui后界面空白(vue引入elementui不起作用)
- 2024-10-28 VUE3前端开发入门系列教程三:VITE热更新配置及WSL填坑
- 2024-10-28 vue3使用vuex 集中式管理状态数据
你 发表评论:
欢迎- 06-23MySQL合集-mysql5.7及mysql8的一些特性
- 06-23MySQL CREATE TABLE 简单设计模板交流
- 06-23MYSQL表设计规范(mysql设计表注意事项)
- 06-23MySQL数据库入门(四)数据类型简介
- 06-23数据丢失?别慌!MySQL备份恢复攻略
- 06-23MySQL设计规范(mysql 设计)
- 06-23MySQL数据实时增量同步到Elasticsearch
- 06-23MySQL 避坑指南之隐式数据类型转换
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)