zoukankan      html  css  js  c++  java
  • vuejs单一事件管理组件间的通信

    <!DOCTYPE html>
    <html lang="en">
    
    <head>
      <meta charset="UTF-8">
      <title>Document</title>
      <script type="text/javascript" src="vue.js"></script>
      <script type="text/javascript">
      // 单一事件管理
      var Event = new Vue();
    
      // A组件发送数据
      var A = {
          data() {
            return {
              a: '我是a数据'
            }
          },
          template: `
          <div>
          <span>{{a}}</span>
          <button @click="send">我是组件a</button>
          </div>
          `,
          methods: {
            send() {
              Event.$emit('data-a', this.a)
            }
          }
        };
    
      // B组件发送数据
      var B = {
          data() {
            return {
              b: '我是b数据'
            }
          },
          template: `
          <div>
          <span>{{b}}</span>
          <button @click="send">我是组件b</button>
          </div>
          `,
          methods: {
            send() {
              Event.$emit('data-b', this.b)
            }
          }
        };
    
      // C组件接受数据
      var C = {
          data() {
            return {
                a:'',
                b:''
            }
          },
          template: `
          <div>
          <span>{{a}}</span>
          <span>{{b}}</span>
          </div>
          `,
          mounted() {
            Event.$on('data-a',function(data){
                this.a = data
            }.bind(this));
            Event.$on('data-b',function(data){
                this.b = data
            }.bind(this));
    
          }
        };
    
    
        window.onload = function() {
          var app = new Vue({
            el: '#box',
            components: {
              'com-a': A,
              'com-b': B,
              'com-c': C
            }
          })
        }
      </script>
    </head>
    
    <body>
      <!-- 组件间得通信管理 -->
      <div id="box">
        <div>
          <com-a></com-a>
          <com-b></com-b>
          <com-c></com-c>
        </div>
      </div>
    </body>
    
    </html>

    定义了一个全局对象,组件把数据发送出去,任何组件都可以接收到数据

  • 相关阅读:
    MVC4中EasyUI Tree异步加载JSON数据生成树
    Linq语法
    委托的多种写法
    centos7安装Hive2.3.0
    ApacheKylin笔记
    把普通的JavaProject变成MavenProject
    eclipse 手动/自动安装插件
    我的JdbcUtils类
    Druid 连接池 JDBCUtils 工具类的使用
    Maven下载cxf所需要的jar包
  • 原文地址:https://www.cnblogs.com/yesyes/p/6629602.html
Copyright © 2011-2022 走看看