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 相关文章推荐
encode脚本和normal脚本混用的问题与解决方法
Mar 08 Javascript
JavaScript 继承的实现
Jul 09 Javascript
斜45度寻路实现函数
Aug 20 Javascript
腾讯与新浪的通过IP地址获取当前地理位置(省份)的接口
Jul 26 Javascript
jQuery查询数据返回object和字符串影响原因是什么
Aug 09 Javascript
js数组循环遍历数组内所有元素的方法
Jan 18 Javascript
单击某一段文字改写文本颜色
Jun 06 Javascript
JS实现可直接显示网页代码运行效果的HTML代码预览功能实例
Aug 06 Javascript
jQuery实现鼠标经过购物车出现下拉框代码(推荐)
Jul 21 Javascript
bootstrap table动态加载数据示例代码
Mar 25 Javascript
zTree异步加载展开第一级节点的实现方法
Sep 05 Javascript
在 Typescript 中使用可被复用的 Vue Mixin功能
Apr 17 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
社区(php&amp;&amp;mysql)一
2006/10/09 PHP
基于PHP导出Excel的小经验 完美解决乱码问题
2013/06/10 PHP
php获取汉字首字母的函数
2013/11/07 PHP
ThinkPHP采用GET方式获取中文参数查询无结果的解决方法
2014/06/26 PHP
PHP管理依赖(dependency)关系工具 Composer的自动加载(autoload)
2014/08/18 PHP
PHP-FPM运行状态的实时查看及监控详解
2016/11/18 PHP
PHP使用mysqli操作MySQL数据库的简单方法
2017/02/04 PHP
PHP判断是否是微信打开,浏览器打开的方法
2018/03/14 PHP
jQuery操作select的实例代码
2012/06/14 Javascript
js制作的鼠标悬浮时产生的下拉框效果
2012/10/27 Javascript
JavaScript面向对象编程入门教程
2014/04/16 Javascript
js简单实现调整网页字体大小的方法
2016/07/23 Javascript
JS实现鼠标滑过显示边框的菜单效果
2016/09/21 Javascript
jQuery+正则+文本框只能输入数字的实现方法
2016/10/07 Javascript
AngularJS实践之使用ng-repeat中$index的注意点
2016/12/22 Javascript
angular-cli修改端口号【angular2】
2017/04/19 Javascript
JQuery 又谈ajax局部刷新
2017/11/27 jQuery
vue axios 简单封装以及思考
2018/10/09 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
零基础写python爬虫之爬虫编写全记录
2014/11/06 Python
python中使用xlrd、xlwt操作excel表格详解
2015/01/29 Python
Python网络爬虫出现乱码问题的解决方法
2017/01/05 Python
python初学之用户登录的实现过程(实例讲解)
2017/12/23 Python
python保存字典和读取字典的实例代码
2019/07/07 Python
基于python实现自动化办公学习笔记(CSV、word、Excel、PPT)
2019/08/06 Python
python如何查看网页代码
2020/06/07 Python
Pycharm中配置远程Docker运行环境的教程图解
2020/06/11 Python
下面代码从性能上考虑,有什么问题
2015/04/03 面试题
服务行业个人求职的自我评价
2013/12/12 职场文书
大学自主招生自荐信范文
2014/02/26 职场文书
村干部承诺书
2014/03/28 职场文书
2015年学校党建工作总结
2015/05/19 职场文书
校园歌手大赛主持词
2015/07/03 职场文书
大学毕业生自我鉴定范文
2019/06/21 职场文书
Javascript webpack动态import
2022/04/19 Javascript
vue实现在data里引入相对路径
2022/06/05 Vue.js