vuejs中父子组件之间通信方法实例详解


Posted in Javascript onJanuary 17, 2020

本文实例讲述了vuejs中父子组件之间通信方法。分享给大家供大家参考,具体如下:

一、父组件向子组件传递消息

// Parent.vue

<template>
 <div class="parent">
  <v-child :msg="message"></v-child>
 </div>
</template>
<script>
 import VChild from './child.vue'
 export default {
  components: {
   VChild
  },
  data () {
   return {
    // 父组件将message作为参数传入子组件中
    message: '来自父组件消息'
   }
  }
 }
</script>
// Child.vue
<template>
 <div class="child">
  <h1>child</h1>
  <p>{{ msg }}</p>
 </div>
</template>
<script>
 export default {
  // 通过props定义外部系统可以传入的参数
  // 定义了一个msg变量,类型是String,默认是空字符串
  props: {
   msg: {
    type: String,
    default: ""
   }
  }
 }
</script>
// router/index.js

import Vue from 'vue'
import Router from 'vue-router'
import HelloWorld from '@/components/HelloWorld'
import Parent from '@/test/Parent'
Vue.use(Router)
export default new Router({
 routes: [
  {
   path: '/',
   name: 'HelloWorld',
   component: HelloWorld
  },
  {
   path: '/parent',
   component: Parent
  }
 ]
})

二、子组件向父组件传递消息

// Parent.vue

<template>
 <div class="parent">
  <v-child :msg="message" @childNotify="childNotify"></v-child>
 </div>
</template>
<script>
 import VChild from './child.vue'
 export default {
  components: {
   VChild
  },
  data () {
   return {
    // 父组件将message作为参数传入子组件中
    message: '来自父组件消息'
   }
  },
  methods: {
   childNotify (params) {
    console.log(params)
   }
  }
 }
</script>
// Child.vue

<template>
 <div class="child" @click="notifyParent">
  <h1>child</h1>
  <p>{{ msg }}</p>
 </div>
</template>
<script>
 export default {
  // 通过props定义外部系统可以传入的参数
  // 定义了一个msg变量,类型是String,默认是空字符串
  props: {
   msg: {
    type: String,
    default: ""
   }
  },
  methods: {
   notifyParent () {
    var params = {
     m: 1,
     n: 2
    }
    // 子组件以事件的形式通知父组件(需要使用$emit方法,第一个参数,事件名称;第二个事件附带的参数)
    this.$emit('childNotify', params)
   }
  }
 }
</script>

参考:https://jingyan.baidu.com/article/455a99505b639da1662778e1.html

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
Js 随机数产生6位数字
May 13 Javascript
围观tangram js库
Dec 28 Javascript
Js中的onblur和onfocus事件应用介绍
Aug 27 Javascript
js实现按一下删除键删除整个单词附demo
Sep 05 Javascript
JS对象与json字符串格式转换实例
Oct 28 Javascript
使用jquery菜单插件HoverTree仿京东无限级菜单
Dec 18 Javascript
javascript超过容器后显示省略号效果的方法(兼容一行或者多行)
Jul 14 Javascript
react-native fetch的具体使用方法
Nov 01 Javascript
使用FormData实现上传多个文件
Dec 04 Javascript
Vue多组件仓库开发与发布详解
Feb 28 Javascript
javascript 关于赋值、浅拷贝、深拷贝的个人理解
Nov 01 Javascript
JavaScript享元模式原理与用法实例详解
Mar 09 Javascript
React Hooks 实现和由来以及解决的问题详解
Jan 17 #Javascript
详解搭建一个vue-cli的移动端H5开发模板
Jan 17 #Javascript
jQuery实现王者荣耀手风琴效果
Jan 17 #jQuery
JS实现transform实现扇子效果
Jan 17 #Javascript
jQuery 判断元素是否存在然后按需加载内容的实现代码
Jan 16 #jQuery
浅谈VUE中演示v-for为什么要加key
Jan 16 #Javascript
Vue引入Stylus知识点总结
Jan 16 #Javascript
You might like
IIS环境下快速安装、配置和调试PHP5.2.0
2006/12/17 PHP
某大型网络公司应聘时的笔试题目附答案
2008/03/27 PHP
完美解决PHP中的Cannot modify header information 问题
2013/08/12 PHP
两级联动select刷新后其值保持不变的实现方法
2014/01/27 PHP
二进制交叉权限微型php类分享
2014/02/07 PHP
php单文件版在线代码编辑器
2015/03/12 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
PHP有序表查找之插值查找算法示例
2018/02/10 PHP
PHP+Ajax简单get验证操作示例
2019/03/02 PHP
超棒的javascript页面顶部卷动广告效果
2007/12/01 Javascript
从父页面读取和操作iframe中内容方法
2009/07/25 Javascript
js实现简单排列组合的方法
2016/01/27 Javascript
基于javascript实现最简单的选项卡切换效果
2016/05/16 Javascript
Node连接mysql数据库方法介绍
2017/02/07 Javascript
JavaScript实现旋转轮播图
2020/08/18 Javascript
详解webpack进阶之loader篇
2017/08/23 Javascript
微信小程序实现底部导航
2018/11/05 Javascript
利用原生JS实现data方法示例代码
2019/05/28 Javascript
小程序中canvas的drawImage方法参数使用详解
2019/07/04 Javascript
Vue退出登录时清空缓存的实现
2019/11/12 Javascript
antd配置config-overrides.js文件的操作
2020/10/31 Javascript
[58:00]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Elephant BO3 第二场 2月7日
2021/03/11 DOTA
python写入中英文字符串到文件的方法
2015/05/06 Python
浅析python实现scrapy定时执行爬虫
2018/03/04 Python
python中for in的用法详解
2020/04/17 Python
Python实现进度条和时间预估的示例代码
2020/06/02 Python
Python Django路径配置实现过程解析
2020/11/05 Python
利用Python发送邮件或发带附件的邮件
2020/11/12 Python
Guess荷兰官网:美国服饰品牌
2020/01/22 全球购物
KELLER SPORTS荷兰:在线订购最好的运动产品
2020/10/13 全球购物
易程科技软件测试笔试
2013/03/24 面试题
入党积极分子十八届四中全会思想汇报
2014/10/23 职场文书
2014财务部年度工作总结
2014/12/08 职场文书
2014年学校团委工作总结
2014/12/20 职场文书
上学路上观后感
2015/06/16 职场文书
Keras在mnist上的CNN实践,并且自定义loss函数曲线图操作
2021/05/25 Python