1.父传子

  父组件准备一个数据,通过自定义属性给子组件赋值,进行传递

  在子组件中通过 props 属性来接收参数

<body><div id="app"><son passdata="msg"></son></div>
</body>
<script>Vue.component('son', {template: '<div>父组件的数据为:{{ passdata }}</div>',props: ['passdata']})new Vue({el: '#app',data: {msg: '父组件数据'}})
</script>

2.子传父

  在子组件准备一个数据,通过 this.$emit('自定义事件', '参数'),进行传递。this.$emit 相当于要执行子组件的自定义事件,并且传入参数
  在父组件中给子组件注册好自定义事件,并且实现这个方法,就可以得到参数了。<son @自定义事件="getval">

<body><div id="app">     //myevent是子组件中的事件<son @myevent='getVal'></son></div>
</body>
<script>Vue.component('son', {     //①通过事件触发passval方法template: `<div>给父组件传参<button @click="passval">传参</button></div>`,data(){return {son: 'son数据'}    },methods: {passval(){          //②执行子组件中的myevent事件,通过$emit进行传递(this.son为传递的数据)this.$emit('myevent', this.son)}}})new Vue({el: '#app',methods: {       //③value就是传递过来的数据getVal(value){console.log(value) }}})
</script>

3.并列组件传参

  创建一个公用的 bus (vue 实例)  var vm = new Vue()

  在 A 组件传入数据  vm.$emit('passval', this.name)

  在 B 组件接收数据  vm.$on('passval' ,function(value){})

<body><div id="app"><coma></coma><comb></comb></div>
</body>
<script>  //①创建一个公共实例var vm = new Vue()Vue.component('coma', {     //通过事件触发 myclick方法去传参template: `<div><button @click="myclick"></button></div>`,data() {return {name: 'coma'}},methods: {myclick: function(){          //向公共实例传入数据vm.$emit('passval', this.name)}}})Vue.component('comb', {template: `<div>comb</div>`,mounted() {        //接收数据vm.$on('passval', function(value){console.log(value)})}})new Vue({el: '#app'})
</script>

  

转载于:https://www.cnblogs.com/xhrr/p/10624834.html

vue中组件间的传参相关推荐

  1. Vue中组件间通信的方式

    Vue中组件间通信的方式 Vue中组件间通信包括父子组件.兄弟组件.跨级组件.非嵌套组件之间通信. props $emit props $emit适用于父子组件的通信,这种组件通信的方式是我们运用的非 ...

  2. vue中组件间通信的6种方式

    前言 组件是 vue.js最强大的功能之一,而组件实例的作用域是相互独立的,这就意味着不同组件之间的数据无法相互进行直接的引用,所以组件间的相互通信是非常重要的. 除了使用vuex外还有下面6种组件间 ...

  3. @query传参_前端框架vue中query和params传参

    注意(用params传参,F5强制刷新参数会被清空,用query,由于参数适用路径传参的所以F5强制刷新也不会被清空.(传参强烈建议适用string)) 也可以选用sessionstorage/loc ...

  4. MySQL在脚本中执行传参数_ZZW_shell脚本中的调用MYSQL传参及注意的问题

    [oracle@ip9140 db_pcc]$ cat zzw_cc.sh #!/bin/bash z_user='pcc_csuser22' z_pass='pcc_csuser22' z_db=' ...

  5. Vue组件之间的传参方式小总结

    学习vue的组件,可能很多人已经了解了组件的创建注册使用,但是随之而来的就是组件之间的通信,父子组件怎么传? 兄弟组件怎么传? 不是父子组件又怎么传? 接下来介绍几种组件之间的传参方式,也是很容易面试 ...

  6. vue组件之间的传参总结

    之前写的Vue 子父组件间的传值_WeiflR10的博客-CSDN博客 一.父传子(prop) 第一步:在父组件中定义数据,例:tohome data () {return {tohome:" ...

  7. React中组件间通信的方式

    React中组件间通信的方式 React中组件间通信包括父子组件.兄弟组件.隔代组件.非嵌套组件之间通信. Props props适用于父子组件的通信,props以单向数据流的形式可以很好的完成父子组 ...

  8. 【Vue父子组件间通信】

    Vue父子组件间通信 父子组件通信 父传子 (props) 子传父 (自定义事件) 完整代码 效果 父子组件通信 父传子 (props) (1)在父组件中使用子组件时,给子组件一个自定义属性,这个属性 ...

  9. jeecg-boot中popup实现动态传参

    jeecg-boot中popup实现动态传参 环境: 功能实现: 后话: 环境: 最近任务是基于jeecg-boot框架的,用的是jeecg-boot V2.4.0版. 功能实现: 有表"p ...

  10. Vue中组件数据的传递

    Vue中组件的作用域是隔离的,父组件中的数值子组件看不到!也就是说,用angular作比喻,组件的scope天生是scope:()的! 如果父组件需要往子组件中传数据,此时应该使用标签属性: < ...

最新文章

  1. django项目用 setuptools打包构建(待更新)
  2. Mysql 错误 Code: 1093. You can't specify target table for update in FROM clause
  3. win10+vs2017 snmp开发实例
  4. uuid怎么获取_我们经常说的限流应该怎么做?
  5. matlab 中imagesc的用法
  6. 基金委托管理系统试题
  7. Project Euler Problem 10-Summation of primes
  8. 程序员面试题100题第03题——求子数组的最大和
  9. 黄聪:JQUERY的datatables插件,Date range filter时间段筛选功能
  10. 324.摆动排序II
  11. html5 ogv格式转换,Free OGV Video Converter(OGV视频转换器)
  12. 学习|从原理上出发,足不出户刷长跑(要刷就刷有步数的长跑)
  13. 基金指数温度怎么算_基金指数温度靠谱吗【指数温度查询技巧】
  14. RFID通信系统框图
  15. i78700k配什么显卡好_2K分辨率极致吃鸡 i7-8700K配GTX1070Ti吃鸡配置推荐 (全文)
  16. IETESTER ie10.local 下载
  17. 基于OpenCV DNN模块给黑白老照片上色(附Python/C++源码)
  18. 计算机硬盘分区安全,Win10如何安全的给移动硬盘分区?win10给移动硬盘分区的方法...
  19. HiveConf of name hive.metastore.local does not exis问题
  20. 【BZOJ 3083】遥远的国度 树剖

热门文章

  1. Adhesive框架系列文章--报警服务使用实践
  2. C# WebBrowser准确判断网页最终装载完毕
  3. css matrix矩阵,矩阵 | matrix() (Transforms) - CSS 中文开发手册 - Break易站
  4. python中字符串方法总结
  5. 解析大型.NET ERP系统 单据标准(新增,修改,删除,复制,打印)功能程序设计...
  6. 分享一篇获取键盘数值的js(限制在IE浏览器)
  7. Android 10系统新特性解读
  8. Head First 设计模式目录
  9. swift UI专项训练19 TextView 多行文本
  10. shell,expect主机密钥免密码登录分发