zoukankan      html  css  js  c++  java
  • vue 子件向父组件传值和参数

    昨天写程序,无意中遇到了vue子件向父组件传值的一个坑里,在此记录一下,提醒来人。

    子组件触动父组件的事件传参,子组件如下:

    <template>
          <div class="btncom">
            <van-button type="default" @click="clearorder()">清空</van-button>    
        </van-popup>
      </div>
    </template>
    <script>
    export default { 
      methods: {
        clearorder() {
                  this.$emit("getorderList", { flg: "1" });
         
        }
      }
    };
    </script>

    父组件如下:

    <template>
        <get-order
          ref="getorders"
          @closeTip="getorder"
          v-if="getoderflg"
          @getorderList="getPendingOrderList()"//都是()惹的祸
        ></get-order>
      </div>
    </template>
    <script>
    export default {
      methods: {
        getPendingOrderList(obj) {
              if(obj){
                if(obj.flg=="1"){
                  this.getoderflg=true;
                }
              }
            }
          });
    }
        },
    </script>

    执行一下,obj为undefined,   为什么,仔细看了一遍,原来问题出在了

     @getorderList="getPendingOrderList()"//都是()惹的祸  ()身上。

    1.不使用圆括号,event被自动当作实参传入。去掉(),问题解决。

    2.使用圆括号,必须显式的传入event对象,如果不传入可能最终找到的是全局的window .event。

      @getorderList="getPendingOrderList($event)",问题解决。

     
  • 相关阅读:
    点击按钮,显示隐藏内容,点击隐藏内容,内容隐藏
    点击按钮,显示隐藏内容,再次点击内容,内容隐藏
    padding值
    文字竖行显示并且逐字出现
    鼠标放上去图片平滑变大效果
    animation
    transform
    Transition过度效果
    git分支操作
    超出文本用省略号代替
  • 原文地址:https://www.cnblogs.com/zhoujuan/p/11796631.html
Copyright © 2011-2022 走看看