vue组件之间数据传递的方法实例分析


Posted in Javascript onFebruary 12, 2019

本文实例分析了vue组件之间数据传递的方法。分享给大家供大家参考,具体如下:

1、props:父组件 -->传值到子组件

app.vue是父组件 ,其它组件是子组件,把父组件值传递给子组件需要使用 =>props

在父组件(App.vue)定义一个属性(变量)sexVal = '男'  把该值传递给 子组件(B.vue),如下:

App.vue

<template>
 <div id="app">
  <!--<router-view></router-view>-->
 <parentTochild :sex="sexVal"></parentTochild>
  </div>
</template>
<script>
 import parentTochild from './components/B'
 export default {
  name: 'app',
  data: function () {
   return {
    sexVal:"女"
   }
  },
  methods: {
  },
  components: {
   parentTochild
  }
 }
</script>

B.vue

<template>
 <div class="b_class"> <!--外边只允许有一个跟元素-->
   <p>父组件传值给子组件</p>
   <p>姓名:{{name}}</p>
   <p>年龄:{{age}}</p>
   <p>sex:{{sex}}</p>
 </div>
</template>
<script>
 export default {
  data: function () {
   return {
    name: 'zs',
    age: 22
   }
  },
  props:['sex']
 }
</script>

tips:

在父传值给子组件使用属性值:props; 理解成 “ 中介” 父组件绑定传递属性值(:sex="sexval") 子组件 获取属性值 props['sex'] 会添加到data 对象中

 vue组件之间数据传递的方法实例分析

2、$emit:子组件 -->传值到父组件

在B.vue 子组件添加一个点击事件为例子

@click="sendMs

<input type="button" @click="sendMsg" value="子组件值传父组件">

在调用该函数后使用$emit方法传递参数 (别名,在父组件作为事件名称, 值);

methods: {
   sendMsg: function () {
    this.$emit('childMsg', '值来自---子组件值')
   }
}

App.vue

在父组件中 使用该别名(作为事件名使用),调用方法 childEvent 返回子组件传过来的值

<p>{{message}}</p>
  <!--<router-view></router-view>-->
<parentTochild :sex="sexVal" @childMsg = "childEvent"></parentTochild>
data: function () {
   return {
    sexVal: "女",
    message: ''
   }
},
methods: {
   childEvent: function (msg) {
     this.message = msg;  // msg 来自子组件
   }
}

点击 “按钮”值会传到 父组件中。 组件之间不能互相传值。

 vue组件之间数据传递的方法实例分析

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

Javascript 相关文章推荐
Array.prototype.concat不是通用方法反驳[译]
Sep 20 Javascript
使用JavaScript的AngularJS库编写hello world的方法
Jun 23 Javascript
jQuery匹配文档链接并添加class的方法
Jun 26 Javascript
基于jQuery+PHP+Mysql实现在线拍照和在线浏览照片
Sep 06 Javascript
jquery验证邮箱格式并显示提交按钮
Nov 07 Javascript
javascript html5摇一摇功能的实现
Apr 19 Javascript
快速解决Canvas.toDataURL 图片跨域的问题
May 10 Javascript
JavaScript检测原始值、引用值、属性
Jun 20 Javascript
ES6 Map结构的应用实例分析
Jun 26 Javascript
webpack+express实现文件精确缓存的示例代码
Jun 11 Javascript
vue-cli3 热更新配置操作
Sep 18 Javascript
浅谈JavaScript作用域
Dec 06 Javascript
vue添加class样式实例讲解
Feb 12 #Javascript
Vue中使用canvas方法总结
Feb 12 #Javascript
通过npm或yarn自动生成vue组件的方法示例
Feb 12 #Javascript
js实现json数组分组合并操作示例
Feb 12 #Javascript
vue文件运行的方法教学
Feb 12 #Javascript
vue的for循环使用方法
Feb 12 #Javascript
JavaScript常用工具方法封装
Feb 12 #Javascript
You might like
一个捕获函数输出的函数
2007/02/14 PHP
PHP6 先修班 JSON实例代码
2008/08/23 PHP
PHP读取XML值的代码(推荐)
2011/01/01 PHP
PHP目录函数实现创建、读取目录教程实例
2011/01/13 PHP
table标签的结构与合并单元格的实现方法
2013/07/24 PHP
Yii2组件之多图上传插件FileInput的详细使用教程
2016/06/20 PHP
利用PHP命令行模式采集股票趋势信息
2016/08/09 PHP
Redis在Laravel项目中的应用实例详解
2017/08/11 PHP
Yii支持多域名cors原理的实现
2018/12/05 PHP
PHP的mysqli_thread_id()函数讲解
2019/01/24 PHP
JavaScript 撑出页面文字换行
2009/06/15 Javascript
Javascript模块化编程(一)AMD规范(规范使用模块)
2013/01/17 Javascript
原生javascript兼容性测试实例
2013/07/01 Javascript
通过实例理解javascript中没有函数重载的概念
2015/06/03 Javascript
用JavaScript动态建立或增加CSS样式表的实现方法
2016/05/20 Javascript
解决js ajax同步请求造成浏览器假死的问题
2018/01/18 Javascript
vue自定义tap指令及tap事件的实现
2018/09/18 Javascript
微信小程序左滑删除实现代码实例
2019/09/16 Javascript
JavaScript代码简化技巧实例解析
2020/09/09 Javascript
[05:15]DOTA2英雄梦之声_第16期_灰烬之灵
2014/06/21 DOTA
python学习手册中的python多态示例代码
2014/01/21 Python
python实现批量按比例缩放图片效果
2018/03/30 Python
python实时获取外部程序输出结果的方法
2019/01/12 Python
windows下安装Python虚拟环境virtualenvwrapper-win
2019/06/14 Python
如何使用Python标准库进行性能测试
2019/06/25 Python
Python发送邮件的实例代码讲解
2019/10/16 Python
Python with关键字,上下文管理器,@contextmanager文件操作示例
2019/10/17 Python
python基于K-means聚类算法的图像分割
2019/10/30 Python
python绘制彩虹图
2019/12/16 Python
Python读取pdf表格写入excel的方法
2021/01/22 Python
薇诺娜官方网上商城:专注敏感肌肤
2017/05/25 全球购物
营销经理工作检讨书
2014/11/03 职场文书
2015年乡镇统计工作总结
2015/04/22 职场文书
公司处罚决定书
2015/06/24 职场文书
解决xampp安装后Apache无法启动
2022/03/21 Servers
SQL Server数据库查询出现阻塞之性能调优
2022/04/10 SQL Server