zoukankan      html  css  js  c++  java
  • vue 子组件传值给父组件,兄弟组件传参以及实现动态组件

    父组件传参给子组件

    父组件:
    
         子组件引入父组件注册后当做标签的形式挂载
    
         <子组件 :xxx="传递的参数"></子组件>
    
    子组件:
         
         利用props接收
        
          props:{}
    

      

    vue 子组件使用$emit传参给父组件

        

    方法一:  
        子组件: this.$emit('xxx', 参数)
       
        父组件: <子组件 @xxx='方法名($event)'></子组件>
    
    方法二:父组件中子组件标签绑定一个ref 可以 通过this.$refs.xxx来获取

    兄弟组件传参:

    main.js

            vue.prototype.$EventBus = new vue()    // 先将其绑定在原型链上

           兄1:this.$EventBus.$emit('xxx' ,参数)

           兄2:this.$EventBus.$on('xxx', (message) => {

                     console.log(message)

                 })

      

      动态组件:

          <component :is="变量名"></component>

    '变量名' 是data里的数据可以动态改变从而切换不同的组件,显示不同的组价内容
    将需要变换的组件先引入共同的父组件 然后根据各自项目需求进行切换。


    最后还发现了一种传参方式:provide inject
    vue提供了provide inject帮助我们解决多层嵌套通信的问题,在provide中指定要传递给子孙组件的数据,子孙组件通过inject注入祖父组件传递过来的数据。




  • 相关阅读:
    hdu 5726 GCD
    codeforces 982C Cut 'em all!
    codeforces 982B Bus of Characters
    codeforces 982A Row
    codeforces 983B XOR-pyramid
    codeforces 979D Kuro and GCD and XOR and SUM
    codeforces 983A Finite or not?
    codeforces 984B Minesweeper
    codeforces 979C Kuro and Walking Route
    codeforces 979B Treasure Hunt
  • 原文地址:https://www.cnblogs.com/wasbg/p/13219049.html
Copyright © 2011-2022 走看看