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 相关文章推荐
用apply让javascript函数仅执行一次的代码
Jun 27 Javascript
jquery中focus()函数实现当对象获得焦点后自动把光标移到内容最后
Sep 29 Javascript
javascript中substring()、substr()、slice()的区别
Aug 30 Javascript
JavaScript电子时钟倒计时
Jan 09 Javascript
js当前页面登录注册框,固定div,底层阴影的实例代码
Oct 04 Javascript
JS实现数组去重复值的方法示例
Feb 18 Javascript
JavaScript对象引用与赋值实例详解
Mar 15 Javascript
vue2.5.2使用http请求获取静态json数据的实例代码
Feb 27 Javascript
Vue中实现权限控制的方法示例
Jun 07 Javascript
js实现图片区域可点击大小随意改变(适用移动端)代码实例
Sep 11 Javascript
Vue2.x和Vue3.x的双向绑定原理详解
Nov 05 Javascript
【js设计模式】SOLID五大设计原则
Mar 24 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.ini中文版(2)
2006/10/09 PHP
PHP中文件读、写、删的操作(PHP中对文件和目录操作)
2012/03/06 PHP
PHP反射类ReflectionClass和ReflectionObject的使用方法
2013/11/13 PHP
php实现可以设置中奖概率的抽奖程序代码分享
2014/01/19 PHP
php实现的一个简单json rpc框架实例
2015/03/30 PHP
PHP读取CSV大文件导入数据库的实例
2017/07/24 PHP
thinkPHP框架实现多表查询的方法
2018/06/14 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
Javascript insertAfter() 实现函数代码
2011/10/12 Javascript
jquery.boxy弹出框(后隔N秒后自动隐藏/自动跳转)
2013/01/15 Javascript
原生js实现跨浏览器获取鼠标按键的值
2013/04/08 Javascript
jQuery菜单插件superfish使用指南
2015/04/21 Javascript
Node.js事件驱动
2015/06/18 Javascript
JS实现简单的tab切换选项卡效果
2016/09/21 Javascript
通过BootStrap实现轮播图的实际应用
2016/09/26 Javascript
基于node.js实现微信支付退款功能
2017/12/19 Javascript
JS与CSS3实现图片响应鼠标移动放大效果示例
2018/05/04 Javascript
使用D3.js构建实时图形的示例代码
2018/08/28 Javascript
vue如何安装使用Quill富文本编辑器
2018/09/21 Javascript
vue 循环加载数据并获取第一条记录的方法
2018/09/26 Javascript
JS校验与最终登陆界面功能完整示例
2020/01/13 Javascript
构建Python包的五个简单准则简介
2015/06/15 Python
pygame实现雷电游戏雏形开发
2018/11/20 Python
Python异步操作MySQL示例【使用aiomysql】
2019/05/16 Python
python实现倒计时小工具
2019/07/29 Python
Django 源码WSGI剖析过程详解
2019/08/05 Python
python 实现仿微信聊天时间格式化显示的代码
2020/04/17 Python
使用Python实现微信拍一拍功能的思路代码
2020/07/09 Python
大韩航空官方网站:Korean Air
2017/10/25 全球购物
Omio波兰:全欧洲低价大巴、火车和航班搜索和比价
2018/02/16 全球购物
华纳兄弟工作室的官方授权商店:WB Shop
2018/11/30 全球购物
ORACLE第二个十问
2013/12/14 面试题
保护环境建议书100字
2014/05/13 职场文书
德能勤绩廉个人总结
2015/02/14 职场文书
走进毛泽东观后感
2015/06/04 职场文书
2016预备党员培训心得体会
2016/01/08 职场文书