账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    vue this.$emit传值触发两次
    25
    0

    <div class="tab" ref="tab">

      <div class="tab_content" ref="tabcontent">
          <div class="tab_item" v-for="(item,index) in menuList" ref="tabitem" :key="index" :class="clickIndex == index ? 'click-item' : ''" @click="itemClick(index)">
              {{item.name}}
          </div>
      </div>
      
      
      itemClick(index){
          this.clickIndex = index
          this.$emit("setMenu",index)
      }
      
      
       <scroller :menuList="menuList" @setMenu="setMenu"></scroller> 
       
       
        //menu点击
    setMenu(index){
      console.log(index)
      let Id = this.menuList[index].id  //通过索引拿到相对应的id
      if (this.first != Id) {
        this.first = Id;
        this.listInfo = [] //清空
        this.pageNum = 1 //初始化
        this.NextPage = true; //初始化
        this.tip = false; //初始化
        this.loadMore(this.first)
      }
    }, 
    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    • 长梦霜歌 超级管理员 1楼

      在 Vue 中,当您使用 this.$emit 事件时,它将触发事件,并将当前对象作为参数传递给事件处理函数。然而,有时您可能希望触发事件两次,因此需要手动传递数据。

      以下是一个简单的例子,展示了如何使用 this.$emit 事件并手动传递数据:

      ```html

      ```

      在这个例子中,当用户点击按钮时,会触发 handleClick 方法,该方法将 this.message 变量传递给 this.$emit,然后 this.$emit 事件将 message 变量设置为 "Hello, world!"。这两次触发的事件将会在页面上分别显示 "Hello, world!" 和 "Click me"。

      请注意,使用 this.$emit 事件时,必须确保在处理函数中正确使用它。否则,事件可能会被多次触发,导致错误的结果。

    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部