平行组件传值

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

  • 代码示例

    <!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>

最新文章

  1. AdminLTE 2 开源模版
  2. Fiddler进行手机抓包
  3. 在windows下配置pthread
  4. Median Weight Bead_floyd
  5. 如何查找Mac上的USB存储设备使用痕迹
  6. C#的WebBrowser操作frame如此简单
  7. Eclipse 中使用Genymotion 作为模拟器的步骤
  8. 无法关闭的QT程序(覆盖closeEvent,新建QProcess并脱离关系)
  9. sql server数据建表
  10. IE6浏览器不支持固定定位(position:fixed)解决方案
  11. 平移关节(Prismatic Joint)
  12. 6.Java集合总结系列:常见集合类的使用(List/Set/Map)
  13. 201521123026 《Java程序设计》第一周学习总结
  14. the secrets
  15. 移动端自动化测试-WTF Appium?
  16. 奇怪吸引子---LorenaMod2
  17. Linux好用的工具命令 - nl/du
  18. JavaScript基础(四)
  19. react状态提升问题::::
  20. Typescript学习总结1

热门文章

  1. ZYNQ Block Design中总线位宽的截取与合并操作
  2. Mybatis案例升级版——小案例大道理
  3. POJ 1077 Eight (BFS+康托展开)详解
  4. poj 1661 Help Jimmy(记忆化搜索)
  5. MariaDB数据库自学一
  6. JDBC处理mysql大数据
  7. Unity3D_01_各种寻找GameObject方法
  8. 一文搞懂 deconvolution、transposed convolution、sub-&#173;pixel or fractional convolution
  9. Linux 笔记 - 第二十章 配置 Nginx 反向代理和负载均衡
  10. Qt插件热加载-QPluginLoader实现