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 相关文章推荐
jquery链式操作的正确使用方法
Jan 06 Javascript
jquery使用append(content)方法注意事项分享
Jan 06 Javascript
9款2014最热门jQuery实用特效推荐
Dec 07 Javascript
javascript实现详细时间提醒信息效果的方法
Mar 11 Javascript
javascript实现table表格隔行变色的方法
May 13 Javascript
在Ubuntu系统上安装Ghost博客平台的教程
Jun 17 Javascript
关于动态生成dom绑定事件失效的原因及解决方法
Aug 06 Javascript
利用jsonp跨域调用百度js实现搜索框智能提示
Aug 24 Javascript
Vue ElementUI之Form表单验证遇到的问题
Aug 21 Javascript
jQuery实现当拉动滚动条到底部加载数据的方法分析
Jan 24 jQuery
vue-cli3中配置alias和打包加hash值操作
Sep 04 Javascript
Nuxt.js的路由跳转操作(页面跳转nuxt-link)
Nov 06 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 daodb插入、更新与删除数据
2009/03/19 PHP
php中session_unset与session_destroy的区别分析
2011/06/16 PHP
ThinkPHP提交表单时默认自动转义的解决方法
2014/11/25 PHP
jQuery制作仿腾讯web qq用户体验桌面
2013/08/20 Javascript
Javasipt:操作radio标签详解
2013/12/30 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
js仿淘宝评价评分功能
2017/02/28 Javascript
xmlplus组件设计系列之网格(DataGrid)(10)
2017/05/05 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
在Angular中实现一个级联效果的下拉框的示例代码
2020/05/20 Javascript
VsCode里的Vue模板的实现
2020/08/12 Javascript
python创建列表并给列表赋初始值的方法
2015/07/28 Python
Python操作RabbitMQ服务器实现消息队列的路由功能
2016/06/29 Python
Python3中exp()函数用法分析
2019/02/19 Python
解决Django加载静态资源失败的问题
2019/07/28 Python
使用Python制作新型冠状病毒实时疫情图
2020/01/28 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
python编写softmax函数、交叉熵函数实例
2020/06/11 Python
python实现图片素描效果
2020/09/26 Python
网易微博Web App用HTML5开发的过程介绍
2012/06/13 HTML / CSS
HTML5 文件上传下载的实例代码
2017/07/03 HTML / CSS
英国最大的在线时尚眼镜店:Eyewearbrands
2019/03/12 全球购物
linux比较文件内容的命令是什么
2015/09/23 面试题
如何通过 CSS 写出火焰效果
2021/03/24 HTML / CSS
关于赌博的检讨书
2014/01/24 职场文书
教师个人剖析材料
2014/02/05 职场文书
个人廉洁自律承诺书
2014/03/27 职场文书
技术合作协议书范本
2014/04/18 职场文书
捐款倡议书格式范文
2014/05/14 职场文书
观看《周恩来的四个昼夜》思想汇报
2014/09/12 职场文书
初中毕业生自我评价
2015/03/02 职场文书
2016简历自荐信优秀范文
2016/01/29 职场文书
Python字典和列表性能之间的比较
2021/06/07 Python
健身房被搭讪?用python写了个小米计时器助人为乐
2021/06/08 Python
vue封装数字翻牌器
2022/04/20 Vue.js
MySQL索引 高效获取数据的数据结构
2022/05/02 MySQL