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 相关文章推荐
jquery创建表格(自动增加表格)代码分享
Dec 25 Javascript
jQuery实现感应鼠标动画效果自动伸长的输入框实例
Feb 24 Javascript
javascript作用域问题实例分析
Jul 13 Javascript
javascript封装的sqlite操作类实例
Jul 17 Javascript
JS实现仿苹果底部任务栏菜单效果代码
Aug 28 Javascript
详解Javascript数据类型的转换规则
Dec 12 Javascript
Vue.js在数组中插入重复数据的实现代码
Nov 17 Javascript
谈谈vue中mixin的一点理解
Dec 12 Javascript
vue中实现移动端的scroll滚动方法
Mar 03 Javascript
浅谈Webpack核心模块tapable解析
Sep 11 Javascript
Vue函数式组件-你值得拥有
May 09 Javascript
Bootstrap告警框(alert)实现弹出效果和短暂显示后上浮消失的示例代码
Aug 27 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遍历目录并返回统计目录大小
2014/06/09 PHP
详解PHP实现异步调用的4种方法
2016/03/14 PHP
关于PHP内置的字符串处理函数详解
2017/02/04 PHP
Prototype Array对象 学习
2009/07/19 Javascript
Jquery 在页面加载后执行的几种方式
2014/03/14 Javascript
js 数组去重的四种实用方法
2014/09/09 Javascript
js 右侧浮动层效果实现代码(跟随滚动)
2015/11/22 Javascript
分析js闭包引起的事件注册问题
2016/03/29 Javascript
如何解决IONIC页面底部被遮住无法向上滚动问题
2016/09/06 Javascript
JavaScript实现邮箱地址自动匹配功能代码
2016/11/28 Javascript
Vue.js使用v-show和v-if的注意事项
2016/12/13 Javascript
原生JavaScript实现Ajax异步请求
2017/11/19 Javascript
JS实现点击下拉菜单把选择的内容同步到input输入框内的实例
2018/01/23 Javascript
vue-content-loader内容加载器的使用方法
2018/08/05 Javascript
angular学习之动态创建表单的方法
2018/12/07 Javascript
Angular中innerHTML标签的样式不起作用的原因解析
2019/06/18 Javascript
使用axios请求接口,几种content-type的区别详解
2019/10/29 Javascript
javascript实现简单留言板案例
2021/02/09 Javascript
[02:48]DOTA2超级联赛专访海涛:你们的选择没有错
2013/06/07 DOTA
python实现超简单端口转发的方法
2015/03/13 Python
Django的HttpRequest和HttpResponse对象详解
2018/01/26 Python
Python中的默认参数实例分析
2018/01/29 Python
python和mysql交互操作实例详解【基于pymysql库】
2019/06/04 Python
使用Python画股票的K线图的方法步骤
2019/06/28 Python
Django 创建新App及其常用命令的实现方法
2019/08/04 Python
自定义Django默认的sitemap站点地图样式
2020/03/04 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
2020/12/13 Python
电子商务专业学生的自我鉴定
2013/11/28 职场文书
国际贸易专业个人职业生涯规划
2014/02/15 职场文书
学习两会精神心得范文
2014/03/17 职场文书
原料仓管员岗位职责
2014/04/12 职场文书
捐书活动总结
2014/05/04 职场文书
高中生逃课检讨书
2014/10/10 职场文书
怎样写好工作计划
2019/04/10 职场文书
Python代码风格与编程习惯重要吗?
2021/06/03 Python
python数字图像处理数据类型及颜色空间转换
2022/06/28 Python