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

 更新时间:2020年07月27日 09:44:37   作者:醉醉美丽栗子  
这篇文章主要介绍了vue中父子组件传值,解决钩子函数mounted只运行一次的操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

因为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只运行一次的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • vue异步更新dom的实现浅析

    vue异步更新dom的实现浅析

    Vue中的数据更新是异步的,意味着我们在修改完Data之后并不能立刻获取修改后的DOM元素。本文介绍了vue异步更新dom的实现,感兴趣的小伙伴们可以参考一下
    2021-07-07
  • antd的select下拉框因为数据量太大造成卡顿的解决方式

    antd的select下拉框因为数据量太大造成卡顿的解决方式

    这篇文章主要介绍了antd的select下拉框因为数据量太大造成卡顿的解决方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-10-10
  • vue-router后台鉴权流程实现

    vue-router后台鉴权流程实现

    本文主要介绍了vue-router后台鉴权流程实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2022-08-08
  • IDEA安装vue插件图文详解

    IDEA安装vue插件图文详解

    这篇文章主要为大家详细介绍了IDEA安装vue插件图文,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-09-09
  • vue项目关闭eslint校验

    vue项目关闭eslint校验

    eslint是一个JavaScript的校验插件,通常用来校验语法或代码的书写风格。这篇文章主要介绍了vue项目关闭eslint校验,需要的朋友可以参考下
    2018-03-03
  • Slots Emit和Props穿透组件封装实现摸鱼加钟

    Slots Emit和Props穿透组件封装实现摸鱼加钟

    这篇文章主要为大家介绍了Slots Emit和Props穿透组件封装实现示例详解,为摸鱼加个钟,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • 超级详细的Vue安装与配置教程

    超级详细的Vue安装与配置教程

    Vue web前端三大主流框架之一,是一套用于构建用户界面的渐进式框架,下面这篇文章主要给大家介绍了关于Vue安装与配置教程的相关资料,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2022-06-06
  • Vue中使用vue-count-to(数字滚动插件)详细教程

    Vue中使用vue-count-to(数字滚动插件)详细教程

    这篇文章主要给大家介绍了关于Vue中使用vue-count-to(数字滚动插件)的相关资料,最近需要开发一个数字滚动效果,在网上找到一个关于vue-countTo的插件,觉得这个插件还不错,需要的朋友可以参考下
    2023-09-09
  • vue3中router路由以及vuex的store使用解析

    vue3中router路由以及vuex的store使用解析

    这篇文章主要介绍了vue3中router路由以及vuex的store使用解析,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03
  • Vue.component的属性说明

    Vue.component的属性说明

    这篇文章主要介绍了Vue.component的属性说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-03-03

最新评论