平行组件传值

  • 通过平行组件传值可以实现任何情境下的传值,包括(父传子,子传父)

  • 代码示例

    <!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>Title</title>
    </head>
    <body>
    <div id="app"> <my-alex></my-alex>
    <hr>
    <my-mjj></my-mjj> </div>
    <script src="https://cdn.bootcss.com/vue/2.5.21/vue.js"></script>
    <script>
    // 借助一个空的VUE对象 实现组件之间通信
    let bus = new Vue(); //子组件A
    let A = {
    template: `
    <div>
    <h2>这是子组件: my-alex</h2>
    <p> my-mjj被选中的次数:{{ num }} </p>
    </div>
    `,
    data() {
    return {
    num: 0
    }
    },
    // 关键点 第二步 监听B组件触发了xuanwo A就加1
    mounted() {
    //在文档准备就绪之后就要开始监听bus是否触发了xuanwo的事件
    /*
    bus.$on("xuanwo",function(val){
    // this.num += 1;
    console.log(val);// 点击B 可以跟着加1了
    //关键点 第三步 怎么改A里面的num 的值
    console.log(this); //bus对象 不是A
    })
    */ bus.$on("xuanwo",(val)=>{ //把上面的匿名函数改成箭头函数
    // this.num += 1;
    console.log(val); //点击B 可以跟着加1了
    //关键点 第三步 怎么改A里面的num 的值
    console.log(this); //A组件
    this.num = val;
    })
    }
    }; //子组件B
    let B = {
    template: `
    <div>
    <h2>这是子组件: my-mjj</h2>
    <button v-on:click="add">选我</button> </div>
    `,
    data(){
    return{ num:0 }
    },
    methods:{
    add(){
    this.num += 1;
    // **** 关键点第一步 利用bus 对象抛出一个自定义事件
    bus.$emit("xuanwo",this.num)
    }
    }
    }; //实例化根组件
    let app = new Vue({
    el: "#app",
    data: {
    totalNum: 0
    },
    components: {
    "my-alex": A,
    "my-mjj": B,
    }
    })
    </script>
    </body>
    </html>

vue平行组件传值的更多相关文章

  1. vue平行组件传值 params

    欢迎加入前端交流群交流知识&&获取视频资料:749539640 需要传值的组件组件: <template> <div> <router-link :to= ...

  2. Vue(2)- v-model、局部组件和全局组件、父子组件传值、平行组件传值

    一.表单输入绑定(v-model 指令) 可以用 v-model 指令在表单 <input>.<textarea> 及 <select> 元素上创建双向数据绑定. ...

  3. Vue 2 --v-model、局部组件和全局组件、父子组件传值、平行组件传值

    一.表单输入绑定(v-model 指令) 可以用 v-model 指令在表单 <input>.<textarea> 及 <select> 元素上创建双向数据绑定. ...

  4. vue父子组件传值加例子

    例子:http://element-cn.eleme.io/#/zh-CN/component/form         上进行改的 父传子:用prop:子组件能够改变父组件的值,是共享的,和父操作是 ...

  5. 关于Vue父子组件传值(复杂数据类型的值)的细节点

    vue 父子组件传值是很常见的,多数情况下都是父传递给子的值是基础数据类型,如string,number,boolean, 当父组件值被修改时,子组件能够实时的作出改变. 如果父子传值的类型是复杂数据 ...

  6. 一个故事讲懂vue父子组件传值

    作者:李佳明同学链接:https://www.jianshu.com/p/2272b6ca0f0c 一个故事讲懂vue父子组件传值 讲故事前先讲代码 父组件向子组件传值 父组件数据传递给子组件可以通过 ...

  7. vue 父子组件传值以及方法调用,平行组件之间传值以及方法调用大全

    vue项目经常需要组件间的传值以及方法调用,具体场景就不说了,都知道.基本上所有的传值都可以用vuex状态管理来实现,只要在组件内监听vuex就好. vue常用的传值方式以及方法有: 1. 父值传子( ...

  8. vue.js组件传值

    组件传值有一下几种方式:父子传值(父传子,子传父),非父子传值,vuex,插槽作用域 1.父子传值: (1)父传子: 传值方:当子元素在父元素中当标签使用时,通过给子标签绑定一个自定义属性,属性值为需 ...

  9. vue兄弟组件传值

    vue中除了父子组件传值,父传子用props,子传父用$emit,有时候兄弟组件之间也需要传值 1. 先定义一个中间件,src下面新建self.js import Vue from 'vue'; le ...

随机推荐

  1. .NET Core 使用 K8S ConfigMap的正确姿势

    背景 ASP.NET Core默认的配置文件定义在appsetings.json和appsettings.{Environment}.json文件中. 这里面有一个问题就是,在使用容器部署时,每次修改 ...

  2. Keras(二)Application中五款已训练模型、VGG16框架解读

    Application的五款已训练模型 + H5py简述 Keras的应用模块Application提供了带有预训练权重的Keras模型,这些模型可以用来进行预测.特征提取和finetune. 后续还 ...

  3. 【管理学】PDCA

  4. P1963 [NOI2009]变换序列 倒叙跑匈牙利算法

    题意 构造一个字典序最小的序列T,使得 Dis(i, Ti) = di,其中i是从0开始的,Dis(x,y)=min{∣x−y∣,N−∣x−y∣} ,di由题目给定. 思路 二分图匹配,把左边的看成i ...

  5. HDU-6229 ICPC-沈阳M- Wandering Robots 概率

    HDU - 6229 题意: 在一个n*n的地图中,有一个初始在(0,0)位子的机器人,每次等概率的向相邻的格子移动或者留在原地.问最后留在格子(x,y)(x+y>=n-1)的地方的概率. 思路 ...

  6. POJ-2387 Til the Cows Come Home ( 最短路 )

    题目链接: http://poj.org/problem?id=2387 Description Bessie is out in the field and wants to get back to ...

  7. 网络流---最大流(Edmond-Karp算法)的学习

    先上个代码,等有空补充详解 #include<iostream> #include<cstdio> #include<cstring> #include<cm ...

  8. C++ STL vector的学习

    vector就是一个不定长数组,vector是动态数组,随着元素的加入,它的内部机制会自行扩充空间以容纳新元素,使用vector之前,必须包含相应的头文件和命名空间. #include <vec ...

  9. 漫谈JavaScript中的作用域(scope)

    什么是作用域 程序的执行,离不开作用域,也必须在作用域中才能将代码正确的执行. 所以作用域到底是什么,通俗的说,可以这样理解:作用域就是定义变量的位置,是变量和函数的可访问范围,控制着变量和函数的可见 ...

  10. 云开发数据库VS传统数据库丨云开发101

    云开发数据库与传统数据库的不同 在小程序·云开发中,最核心的便是三大组件:数据库.云存储和云函数,从今天开始,我们将开始隔日更的专栏文章,云开发101,在第一周,我们将从最最核心的数据库开始说起. 云 ...