zoukankan      html  css  js  c++  java
  • vue 组件通信传值

    父子组件通信:

      子组件

    <template>
      <div>
        <h3 @click="alerrt"> 我是子组件一</h3>
        <span>{{parentMessage}}</span>
      </div>
    </template>
    <script>
      export default{
        props: ['parentMessage'],
        mounted() {
          // this.$emit('childEvent');
        },
        methods:{
          alerrt(){
            this.$emit('childEvent',{name:'zhangsan',age:10 });
          }
        }
    
      }
    </script>
    <style scoped>
    </style>

    父组件

    <template>
      <div>
        <h2>父组件</h2>
        <span>父组件传递消息给子组件</span>
        <br>
        <router-view @childEvent="parentMethod" :parentMessage="parentMessage" />
        <!-- <Child-one :parentMessage="parentMessage"></Child-one> -->
        <button type="" @click='extendTest'>extend</button>
        <div id="extend"></div>
      </div>
    </template>
    <script>
      import ChildOne from './ChildOne'
      export default{
        components: {
          ChildOne
        },
        methods: {
          parentMethod({name,age}) {
            alert(this.parentMessage);
            console.log(this.parentMessage,name,age);
          },
          extendTest() {
            console.log('333');
            var Extend = Vue.extend({
              template: '<p>{{firstName}} {{lastName}} aka {{alias}}</p>',
              data: function () {
                return {
                  firstName: 'Walter',
                  lastName: 'White',
                  alias: 'Heisenberg'
                }
              }
            })
            new Extend().$mount('#extend')
          },
        },
        data () {
          return {
            parentMessage: '我是来自父组件的消息aaaa'
          }
          
        }
    
      }
    </script>
    <style scoped>
    </style>

    兄弟组件通信:

    在main,js里加

    import Vue from 'vue'
    window.eventBus = new Vue();
    在组件里
    兄弟1组件:window.eventBus.$emit('函数名称', {参数 键:值});
    兄弟2组件:
    window.eventBus.$on('grouprecording',参数 =>{
      //处理数据
    })
     
  • 相关阅读:
    修改MySQL表varchar字段的小实验
    MySQL5.6同步指定数据库
    Redis安装
    MongoDB安装
    RMAN备份注意事项
    Oracle Data Guard Protection Modes
    Linux Shell 文本处理工具
    ORACLE 收缩表空间的数据文件
    crfclust.bdb导致磁盘满
    undo管理
  • 原文地址:https://www.cnblogs.com/zhoubingyan/p/8607613.html
Copyright © 2011-2022 走看看