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 获取中文拼音,Select自动匹配字母获取值的代码
Sep 23 Javascript
js关闭父窗口时关闭子窗口
Apr 01 Javascript
jquery实现鼠标拖动图片效果示例代码
Jan 09 Javascript
jquery使用ul模拟select实现表单美化的方法
Aug 18 Javascript
基于jquery实现下拉框美化特效
Feb 02 Javascript
精通JavaScript的this关键字
May 28 Javascript
JavaScript探测CSS动画是否已经完成的方法
Aug 30 Javascript
js实现瀑布流效果(自动生成新的内容)
Mar 16 Javascript
实例学习JavaScript读取和写入cookie
Jan 29 Javascript
jquery实现联想词搜索框和搜索结果分页的示例
Oct 10 jQuery
Vue-cli assets SubDirectory及PublicPath区别详解
Aug 18 Javascript
Taro小程序自定义顶部导航栏功能的实现
Dec 17 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
php不用正则采集速度探究总结
2008/03/24 PHP
PHP 设置MySQL连接字符集的方法
2011/01/02 PHP
php的闭包(Closure)匿名函数详解
2015/02/22 PHP
PHP并发查询MySQL的实例代码
2017/08/09 PHP
PHP实现的数组和XML文件相互转换功能示例
2018/03/15 PHP
php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次)
2020/07/24 PHP
jquery tools之tooltip
2009/07/25 Javascript
fancybox1.3.1 基于Jquery的插件在IE中图片显示问题
2010/10/01 Javascript
jquery键盘事件使用介绍
2011/11/01 Javascript
Ext JS 4官方文档之三 -- 类体系概述与实践
2012/12/16 Javascript
IE6中链接A的href为javascript协议时不在当前页面跳转
2014/06/05 Javascript
jQuery判断当前点击的是第几个li的代码
2014/09/26 Javascript
freemarker判断对象是否为空的方法
2015/08/13 Javascript
js实现改进的仿蓝色论坛导航菜单效果代码
2015/09/06 Javascript
jQuery过滤选择器用法示例
2016/09/12 Javascript
AngularJS入门教程之数据绑定用法示例
2016/11/01 Javascript
微信小程序开发之toast提示插件使用示例
2017/06/08 Javascript
JQuery form表单提交前验证单选框是否选中、删除记录时验证经验总结(整理)
2017/06/09 jQuery
详解vue-router2.0动态路由获取参数
2017/06/14 Javascript
基于vue-resource jsonp跨域问题的解决方法
2018/02/03 Javascript
webpack dll打包重复问题优化的解决
2018/10/10 Javascript
在vue中使用Echarts画曲线图的示例
2020/10/03 Javascript
[48:30]LGD vs infamous Supermajor小组赛D组 BO3 第一场 6.3
2018/06/04 DOTA
[01:03:03]VP vs Mineski 2018国际邀请赛淘汰赛BO3 第一场 8.22
2018/08/23 DOTA
Python多线程编程(三):threading.Thread类的重要函数和方法
2015/04/05 Python
Django自定义插件实现网站登录验证码功能
2017/04/19 Python
基于Python实现的ID3决策树功能示例
2018/01/02 Python
在python中做正态性检验示例
2019/12/09 Python
基于python读取.mat文件并取出信息
2019/12/16 Python
python对Excel的读取的示例代码
2020/02/14 Python
使用HTML和CSS3绘制基本卡通图案的示例分享
2015/11/06 HTML / CSS
斐乐美国官方网站:FILA美国
2019/03/01 全球购物
怎样从/向数据文件读/写结构
2014/11/23 面试题
创先争优活动承诺书
2014/08/30 职场文书
离婚协议书样本
2015/01/26 职场文书
处世之道:关于真诚相待的名言推荐
2019/12/02 职场文书