一、父组件给子组件传值方式(步骤)
1.VC1(子组件)定义props[a,b,c] 注意:props中的每个值都可以加各种修饰,如数据类型,是否可为空,默认值...
2.VC2(父组件)引用子组件
<VC1 a="1",b="2",c="3"></VC1>

二、子组件给父组件传值方式
1.回调方法(:xxx="methodA")
a.父组件(数据接收方)定义此方法methodA
b.子组件(数据发送方)定义props:xxx【xxx属性为方法】 ***传过来得属性必须在props中定义,即只有在props中定义的属性才能被父组件传值
c.子组件(数据发送方)调用xxx方法
2.回调事件 <VC @xxx="methodB"></VC> this.@refs.VC.$on('xxx',methodB)
a.父组件(数据接收方)定义方法methodB
b.通过this.@refs.VC.$on('xxx',methodB) 绑定methodB
c.子组件(数据发送方)通过某事件去触发xxx事件 ----》this.$emit('atguigu',this.name,666,888,900)
d.父组件解绑该事件
3.回调事件<VC ref="curVC" @xxx="methodC"></VC>
a.父组件(数据接收方)定义方法methodC
b.子组件(数据发送方)通过某事件去触发xxx事件 ----》this.$emit('atguigu',this.name,666,888,900)
c.父组件解绑该事件

三、事件总线(步骤)
1.在vue对象中注册自己为$bus Vue.prototype.$bus=this
2.在VC(数据接收方)中定义方法methodA
3.this.$bus.$on('xxx',methodA) xxx:表示事件
4.VC2(数据发送方)去触发xxx事件,this.$bus.$emit('xxx',a,b,c)
5.解绑该事件

四、消息订阅与发布
1.VC1(订阅者)导入pubsub组件,在mount函数中订阅消息
this.pubId = pubsub.subscribe('xxx',(msgName,data)=>{
console.log('有人发布了hello消息,hello消息的回调执行了',msgName,data)
})

2.VC2(发布者)导入pubsub组件,通过某事件去发布
pubsub.publish('xxx',666)

3.VC1(订阅者)在beforeDestory中取消订阅该消息
pubsub.ubsubscribe(this.pubId)

vue中组件传值的几种方式的更多相关文章

  1. vue中组件传值方式汇总

    在应用复杂时,推荐使用vue官网推荐的vuex,以下讨论简单SPA中的组件间传值. 一.路由传值 路由对象如下图所示: 在跳转页面的时候,在js代码中的操作如下,在标签中使用<router-li ...

  2. vue之provide和inject跨组件传递属性值失败(父组件向子组件传值的两种方式)

    简单介绍:当一个子组件需要用到父组件的父组件的某些参数.那么这个时候为了避免组件重复传参,使用vue的依赖注入是个不错的方法,直接在最外层组件设置一个provide,内部不管多少嵌套都可以直接取到最外 ...

  3. vue组件传值的三种方式,文字版解释

    父传子: 当子组件子父组件中当标签使用的时候,给子组件添加一个自定义属性,值为需要传递的值(如: <Child v-bind:parentToChild="parentMsg" ...

  4. Vue 定义组件模板的七种方式(一般用单文件组件更好)

    在 Vue 中定义一个组件模板,至少有七种不同的方式(或许还有其它我不知道的方式): 字符串 模板字面量 x-template 内联模板 render 函数 JSF 单文件组件 在这篇文章中,我将通过 ...

  5. Vue中组件通信的几种方法(Vue3的7种和Vue2的12种组件通信)

    Vue3组件通信方式: props $emit expose / ref $attrs v-model provide / inject Vuex 使用方法: props 用 props 传数据给子组 ...

  6. ASP.Net中页面传值的几种方式

    开篇概述 对于任何一个初学者来说,页面之间传值可谓是必经之路,却又是他们的难点.其实,对大部分高手来说,未必不是难点. 回想2016年面试的将近300人中,有实习生,有应届毕业生,有1-3年经验的,有 ...

  7. ASP.NET MVC教程四:ASP.NET MVC中页面传值的几种方式

    准备 在Models文件夹里面新添加Student实体类,用来模拟从Controller向View传递数据,Student类定义如下: using System; using System.Colle ...

  8. React中组件通信的几种方式

    https://segmentfault.com/a/1190000012361461 需要组件之进行通信的几种情况 父组件向子组件通信 子组件向父组件通信 跨级组件通信 没有嵌套关系组件之间的通信 ...

  9. iOS中数据传值的几种方式

    值传递:基本数据类型的变量之间的数据传递 //值传递不会改变变量的值 void func(int a) { a = ; } int main(int argc, const char * argv[] ...

  10. vue中使用better-scroll的2种方式简述

    前言 better-scroll官方demo展示:https://ustbhuangyi.github.io/better-scroll/#/examples/en better-scroll官方文档 ...

随机推荐

  1. 2023计算机领域顶会(A类)以及ACL 2023自然语言处理(NLP)研究子方向领域汇总

    2023年的计算语言学协会年会(ACL 2023)共包含26个领域,代表着当前前计算语言学和自然语言处理研究的不同方面.每个领域都有一组相关联的关键字来描述其潜在的子领域, 这些子领域并非排他性的,它 ...

  2. git拉项目出现的小问题

    问题描述 在IDEA中拉代码事报错. 点击查看报错信息 error: unable to read askpass response from 'C:\Users\霍亚龙\AppData\Local\ ...

  3. Vue 3项目如何设置全局变量

  4. vscode环境配置(C/C++)

    一.MinGW和vscode的简单了解 1.MinGW是什么? MinGW(Minimalist GNU on Windows).它实际上是将经典的开源 C语言 编译器 GCC 移植到了 Window ...

  5. .net core 读取配置文件的几种方式

    一.Json配置文件 1.这里的配置文件指的是下图 2.json配置文件示例 { "Logging": { "LogLevel": { "Defaul ...

  6. 1 .NET Core笔试题

    1.说说显示实现接口和隐式实现接口的区别. 2.说说file访问修饰的作用. 3.说说什么是原始字符串. 4.C#10 中struct有什么改进? 5.说说C#10中Lambda表达式的新特点. 6. ...

  7. Ubuntu18.4安装g2o

    1.安装依赖项: sudo apt-get install cmake libeigen3-dev libsuitesparse-dev qtdeclarative5-dev qt5-qmake li ...

  8. LG P3809 【模板】后缀排序

    贴模板 注意:\(\text{id}\) 表示第二关键字排序后(其实无需排序,利用上轮的 \(\text{sa}\) 值即可)相应的第一关键字的位置 计数排序为了稳定性最后确定位置时要倒着开始 复制的 ...

  9. Python常见面试题006 类方法、类实例方法、静态方法有何区别?

    006. Python中类方法.类实例方法.静态方法有何区别? 全部放一个里面篇幅过大了,就拆分成1个个发布 示例代码 class Human: def __init__(self, name): s ...

  10. JR文摘_TNFi和阿贝西普降低RA患者CVD风险

    转自 Dr Jack Cush的Twitter (2020-08-19) JR文摘: 18754例RA患者前瞻性观察到1801次CVD事件,与csDMARDs相比, TNFi(HR: 0.82, 95 ...