vue中父子组件传值,解决钩子函数mounted只运行一次的操作


Posted in Javascript onJuly 27, 2020

因为mounted函数只会在html和模板渲染之后会加载一次,但是在子组件中只有第一次的数据显示是正常的,所以需要再增加一个updated函数,在更新之后就可以重新进行取值加载,完成数据的正常显示。

beforCreate(创建之前)

Created(创建之后)

beforMount(载入之前)

Mounted(载入之后)

beforUpdate(更新之前)

Updated(更新之后)

beforDestroy(销毁之前)

Destroyed(销毁之后)

activate(keep-alive组件激活时调用)

deactivated(keep-alive组件停用时调用)

errorCaptured(这个组件的作用是接受子孙组件报错是调用,三个参数 错误对象、错误的组件、错误信息)

父组件向

子组件传值

通过父组件传值调用子组件显示不同的数据

父组件 :conponent.vue

子组件:iconponent.vue

父组件

<template>
 <div>
   <span>父组件</span>
   <icomponent-box :id="this.id"></icomponent-box>
 </div>
</template>
<script>
//导入子组件
import icomponent from './icomponent.vue';
export default {
 data () {
  return {
   id:12
  }
 },
 components:{ //用来注册子组件的节点
   "icomponent-box": icomponent
 }
}
</script>
<style>
</style>

子组件

<template>
 <div>子组件</div>
</template>
<script>
export default {
 updated:{
   this.getComponents();
 },
 mounted:{
  this.getComponents();
 },
 data () {
  return {
  }
 },
 methods:{
  getComponents(){
    this.$http.get("api/getcomponents/" + this.id);
  }
 },
 
 props: ["id"] //接收父组件传递过来的id值
}

</script>

补充知识:Vue父子组件传值,子组件数据只更新一次,之后更改父组件的数据,子组件不再更新

我就废话不多说了,大家还是直接看代码吧~

props:{
  reportInfo:{
    type:Object,
    default:()=>{}
  }
},
data:function(){
	return {
		cityName :' ',
		reportId :' ' ,
	}
}
mounted:function () {
	 var _this = this;
	 
   //初始化获得数据,之后在watch中监听更新
   _this.cityName = _this.reportInfo.cityName;
   _this.reportId = _this.reportInfo.reportId;   
},
watch:{
	reportInfo(newValue, oldValue) {
		var _this = this;
    _this.cityName = newValue.cityName;
    _this.reportId = newValue.reportId;
	}
}

以上这篇vue中父子组件传值,解决钩子函数mounted只运行一次的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JavaScript聚焦于第一个字段的代码
Oct 15 Javascript
javascript实现博客园页面右下角返回顶部按钮
Feb 22 Javascript
javascript鼠标右键菜单自定义效果
Dec 08 Javascript
深入解析桶排序算法及Node.js上JavaScript的代码实现
Jul 06 Javascript
Angularjs结合Bootstrap制作的一个TODO List
Aug 18 Javascript
KnockoutJS 3.X API 第四章之数据控制流foreach绑定
Oct 10 Javascript
jquery实现刷新随机变化样式特效(tag标签样式)
Feb 03 Javascript
JS实现模糊查询带下拉匹配效果
Jun 21 Javascript
layui table 参数设置方法
Aug 14 Javascript
vue加载完成后的回调函数方法
Sep 07 Javascript
vue element-ui table组件动态生成表头和数据并修改单元格格式 父子组件通信
Aug 15 Javascript
js实现幻灯片轮播图
Aug 14 Javascript
Element Alert警告的具体使用方法
Jul 27 #Javascript
Element Badge标记的使用方法
Jul 27 #Javascript
谈一谈vue请求数据放在created好还是mounted里好
Jul 27 #Javascript
JS倒计时两种实现方式代码实例
Jul 27 #Javascript
解决vue页面渲染但dom没渲染的操作
Jul 27 #Javascript
解决VUE mounted 钩子函数执行时 img 未加载导致页面布局的问题
Jul 27 #Javascript
Element Breadcrumb 面包屑的使用方法
Jul 26 #Javascript
You might like
php下载文件的代码示例
2012/06/29 PHP
php获取一个变量的名字的方法
2014/09/05 PHP
php简单实现多语言切换的方法
2016/05/09 PHP
PHP正则之正向预查与反向预查讲解与实例
2020/04/06 PHP
Javascript实例教程(19) 使用HoTMetal(4)
2006/12/23 Javascript
找到了一篇jQuery与Prototype并存的冲突的解决方法
2007/08/29 Javascript
prototype Element学习笔记(篇一)
2008/10/26 Javascript
javascript转换字符串为dom对象(字符串动态创建dom)
2010/05/10 Javascript
jquery防止重复执行动画避免页面混乱
2014/04/22 Javascript
javascript实现将文件保存到本地方法汇总
2015/07/26 Javascript
js实现带缓冲效果的仿QQ面板折叠菜单代码
2015/09/06 Javascript
理解jquery事件冒泡
2016/01/03 Javascript
Bootstrap每天必学之标签页(Tab)插件
2020/08/09 Javascript
VUE2实现事件驱动弹窗示例
2017/10/21 Javascript
Bootstrap栅格系统的使用详解
2017/10/30 Javascript
jQuery实现的简单图片轮播效果完整示例
2018/02/08 jQuery
Vue项目webpack打包部署到Tomcat刷新报404错误问题的解决方案
2018/05/15 Javascript
BootStrap modal实现拖拽功能
2018/12/01 Javascript
Vue 解决多级动态面包屑导航的问题
2019/11/04 Javascript
[46:23]完美世界DOTA2联赛PWL S2 FTD vs Magma 第一场 11.20
2020/11/23 DOTA
python画出三角形外接圆和内切圆的方法
2018/01/25 Python
关于Django ForeignKey 反向查询中filter和_set的效率对比详解
2018/12/15 Python
python 对类的成员函数开启线程的方法
2019/01/22 Python
Python数据可视化:顶级绘图库plotly详解
2019/12/07 Python
python爬虫请求头设置代码
2020/07/28 Python
Python+logging输出到屏幕将log日志写入文件
2020/11/11 Python
巴西婴儿用品商店:Bebe Store
2017/11/23 全球购物
Myholidays美国:在线旅游网站
2019/08/16 全球购物
戴森香港官方网站:Dyson香港
2021/02/11 全球购物
高三自我鉴定怎么写
2013/10/19 职场文书
土地租赁意向书
2014/07/30 职场文书
火锅店的活动方案
2014/08/15 职场文书
机械设计专业大学生职业生涯规划书范文
2014/09/13 职场文书
2014年宣传部工作总结
2014/11/12 职场文书
2015年五四青年节活动总结
2015/02/10 职场文书
单位推荐信范文
2015/03/27 职场文书