zoukankan      html  css  js  c++  java
  • vue 组件传参

    路由配好了 再传个参呗

    注:组件信息流转的时候只能单向
    1 > 父子传参
    传参:通过属性
    prop:传递数据

    a.父组件传参给子组件

     子组件:
        <ul>
            <li v-for="item in dataList"></li>
        </ul>
        
        export default {
            prop: {              //prop接收传过来的参数
                dataList: {
                    type:Array,
                    required:true    //校验
                }
            },
            data() {
                return {
                    dataList: this.dataList
                }
            }
        }
      父组件
        <Position :data-list='List'></Position>  

    b.子组件传参给父组件

    父组件传一个函数给子组件
    子组件:
        export default {
            prop: ['id','onbuttonInfo'],
            data() {
                return {
                    posid: this.id,
                    title: 'abc'
                }
            },
            mounted() {
                this.onbuttonInfo(this.title)
            }
        }      
     父组件:
        <Position :id='sid' :onbuttonInfo='handleButonInfo'>职位列表</Position>
        methods:{
            handleButonInfo (msg) {
                console.log(msg)
            }
        }
        注意:浏览器的坑 会把buttonInfo 都改成全小写

    2 > 动态路由传参

    方式一:path:'/main/:变量名'   
    方式二:
    方法:
        传:
        this.$router.push({name: 'goodslist',params:{"list":this.list}})
        接收:
        data() {
          return {
              goodsList: this.$route.query.list,
              val: ''
          }
        },

    3 > 跳级组件传参 bus总线

    1、components中建Bus.js文件
        import Vue from 'vue'
        const Bus = new Vue({
            
        })
        export default Bus
    2、index。vue中
        import Bus from '../Bus.js'
        mounted() {
            Bus.$on('on-msg',(data)=>{   //订阅 绑定事 接收参数
                console.log(data);
            })
        }
    3、positionList.vue
        import Bus from './Bus.js'
        methods:{
            do() {       //发布 传参
                this.$router.push({name:'search',})
                Bus.$emit('on-msg',120)
            }
        }    

    4 > vuex传参(重点)请查看我的vuex文章 啦啦~~~~

  • 相关阅读:
    webpack打包踩坑记录
    node笔记
    你真的会Xilinx FPGA的复位吗?
    Verilog 99题之001-009
    数字电路基础
    跨时钟域处理
    时序逻辑电路基础
    FPGA&ASIC基本开发流程
    关于FPGA的一些小见解
    基于FPGA的I2C读写EEPROM
  • 原文地址:https://www.cnblogs.com/zjw2004112/p/11578285.html
Copyright © 2011-2022 走看看