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 相关文章推荐
js中字符替换函数String.replace()使用技巧
Aug 14 Javascript
JavaScript 上万关键字瞬间匹配实现代码
Jul 07 Javascript
利用javascript打开模态对话框(示例代码)
Jan 11 Javascript
JavaScript设计模式之抽象工厂模式介绍
Dec 28 Javascript
javascript通过元素id和name直接取得元素的方法
Apr 28 Javascript
js设置document.domain实现跨域的注意点分析
May 21 Javascript
jquery实现标题字体变换的滑动门菜单效果
Sep 07 Javascript
Javascript简单实现面向对象编程继承实例代码
Nov 27 Javascript
Bootstrap进度条实现代码解析
Mar 07 Javascript
详解基于vue的服务端渲染框架NUXT
Jun 20 Javascript
JS中的一些常用的函数式编程术语
Jun 15 Javascript
JS原型对象操作实例分析
Jun 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中路径问题的解决方案
2006/10/09 PHP
php中flush()、ob_flush()、ob_end_flush()的区别介绍
2013/02/17 PHP
PHP实现自动对图片进行滚动显示的方法
2015/03/12 PHP
laravel异步监控定时调度器实例详解
2019/06/21 PHP
JQuery Tips(2) 关于$()包装集你不知道的
2009/12/14 Javascript
jquery自定义类似$.ajax()的方法实现代码
2013/08/13 Javascript
SuperSlide标签切换、焦点图多种组合插件
2015/03/14 Javascript
js点击文本框后才加载验证码实例代码
2015/10/20 Javascript
JavaScript表单焦点自动切换代码
2016/07/24 Javascript
jQuery、zepto、js常用小技巧
2017/02/12 Javascript
JavaScript获取select中text值的方法
2017/02/13 Javascript
Angular 4.x中表单Reactive Forms详解
2017/04/25 Javascript
详解HTTPS 的原理和 NodeJS 的实现
2017/07/04 NodeJs
Javascript ES6中对象类型Sets的介绍与使用详解
2017/07/17 Javascript
基于vue-video-player自定义播放器的方法
2018/03/21 Javascript
怎样使你的 JavaScript 代码简单易读(推荐)
2019/04/16 Javascript
Vue elementui字体图标显示问题解决方案
2020/08/18 Javascript
Python搭建APNS苹果推送通知推送服务的相关模块使用指南
2016/06/02 Python
tensorflow学习笔记之简单的神经网络训练和测试
2018/04/15 Python
Django 跨域请求处理的示例代码
2018/05/02 Python
python实现字符串和字典的转换
2018/09/29 Python
浅谈Python脚本开头及导包注释自动添加方法
2018/10/27 Python
Python面向对象基础入门之编码细节与注意事项
2018/12/11 Python
python使用phoenixdb操作hbase的方法示例
2019/02/28 Python
python+selenium+chromedriver实现爬虫示例代码
2020/04/10 Python
Django 解决由save方法引发的错误
2020/05/21 Python
Scrapy中如何向Spider传入参数的方法实现
2020/09/28 Python
python实现马丁策略的实例详解
2021/01/15 Python
prAna官网:瑜伽、旅行和冒险服装
2019/03/10 全球购物
Hanky Panky官方网站:内衣和睡衣
2019/07/25 全球购物
办公室主任先进事迹
2014/01/18 职场文书
宣传普通话标语
2014/06/27 职场文书
学校与家长安全责任书
2014/07/23 职场文书
工厂见习报告范文
2014/10/31 职场文书
工作期间打牌检讨书范文
2014/11/20 职场文书
如何用python清洗文件中的数据
2021/06/18 Python