zoukankan      html  css  js  c++  java
  • vue组件通讯之互不关联组件之间的通讯

    1.使用事件总线机制

    • 1.创建实例,导出实例,新建bus.js文件
    import Vue from "vue"
    const Bus = new Vue()
    export default Bus
    
    • 2.传值的组件引入事件总线实例,发射事件
    import Bus from 'bus.js'
    Bus.$emit('something','我是传递的值')
    
    • 3.接收的组件引入事件总线实例,接收事件
    import Bus from 'bus.js'
    Bus.$on('something',(res) => {
      console.log(res)  // ==> '我是传递的值'
    })
    

    2.使用provide/inject

    • 1.要传值的组件provide
    provide:{
      something:'我是传递的值'
    }
    

    如果要传递的时data里的值,要使用函数的形式return(同data)

    data(){
      return{
        msg:'我是传递的值'
      }
    },
    provide(){
      return{
        something: this.msg
      }
    }
    
    • 2.接收值的组件通过inject接收
    inject:{
      message:{
        from: 'something'
      }
    },
    
    mounted(){
      console.log(this.message) // ==> '我是传递的值'
    }
    
    • 3.使用vuex,就不多介绍了
  • 相关阅读:
    install cygwin
    Case When PK PIVOT
    SQL Server 2012 Features
    XMLHttpRequest 使用概括
    Html DOM 常用属性和方法
    Rewrite Path in Asp.Net MVC Project
    cefsharp
    线程
    ftp 相关知识集合
    数据库知识集合
  • 原文地址:https://www.cnblogs.com/zoo-x/p/14499372.html
Copyright © 2011-2022 走看看