当前位置:首页 > 技术分析 > 正文内容

vue项目-父页面数据变化使子页面更新的几种情况

ruisui884个月前 (01-07)技术分析27

当操作页面时候,特别是增删改操作之后,数据会有所改变,这个时候我们希望组件中的数据要和最新数据一致,就需要重新更新渲染。以下是针对几种不同情况下方式:

一.子页面调用接口后重新渲染

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值发生变化时,子组件会重新渲染。使子组件完整地触发生命周期钩子。完成页面的数据更新。

扫描二维码推送至手机访问。

版权声明:本文由ruisui88发布,如需转载请注明出处。

本文链接:http://www.ruisui88.com/post/83.html

分享给朋友:

“vue项目-父页面数据变化使子页面更新的几种情况” 的相关文章

专为系统管理员设计的LINUX发行版SYSLINUXOS

SysLinuxOS 承诺“结束为管理任务寻找正确工具”的局面,提供“非常广泛的软件选择,特别是用于使用互联网”。译自 SysLinuxOS, A Linux Distro for System Administrators,作者 David Cassel。全球各地的系统集成商正在发现 SysLin...

面试官:聊聊你知道的Vue与React的区别

最近面到很多大公司的时候,小编都会碰到一个很尴尬的问题,很多大公司的技术栈都是React,但是小编学的是Vue,其实从本质上来说两者都是比较优秀的前端框架,所以有些面试官会问到Vue和React的区别。小编认真整理了一些自己所知道的Vue和React的区别,给大家分享分享。1. 模板语法 vs JS...

用IDEA开发如何用Git快速拉取指定分支代码?

1,准备空的文件夹,git init2,关联远程仓库,git remote add origin gitlab地址3,拉取远程分支代码,git pull origin 远程分支名再用IDEA打开项目即可...

10款超牛Vim插件,爱不释手了

我是一个忠实的Vim编辑器用户,从事开发工作多年,我一直都非常喜欢使用Vim。轻量、便捷,而且,熟悉了Vim相关的快捷键之后,效率能够成倍的提升。除了这些之外,Vim像很多知名的IDE、编辑器一样,也支持插件配置,通过这些插件,可以实现更多高级、高效的操作。今天,就来给大家分享10个我特别喜欢的Vi...

HTML5学习笔记三:HTML5语法规则

1.标签要小写2.属性值可加可不加””或”3.可以省略某些标签 html body head tbody4.可以省略某些结束标签 tr td li例:显示效果:5.单标签不用加结束标签img input6.废除的标签font center big7.新添加的标签将在下一HTML5学习笔记中重点阐述。...

基于Spring Cloud+VUE的多租户小程序商城源码「快速二开可商用」

一、系统介绍JooLun平台是一个专注微信快速二开系统研发的平台,采用Java语言开发,使用的是最新微服务前后端分离技术,目前有公众号和小程序商城两个版本,有公众号后台管理、小程序商城。基于Spring Cloud微服务+VUE实现的核心框架多租户小程序商城源码,核心框架采用SpringBoot2+...