【问题标题】:How to execute multiple events on click?如何在点击时执行多个事件?
【发布时间】:2021-10-28 22:48:24
【问题描述】:

我想点击按钮并执行这两个表达式。

但我需要点击两次才能执行:

1.) 数据 = true 和 2.) 名称(数据)。为什么点击不能执行?

<button @click="data = true,name(data)">

【问题讨论】:

    标签: vue.js vuetify.js


    【解决方案1】:

    @AlexHunter 最好将此逻辑提取到处理函数中。如下所示。

    <button @click="handleClick">click me</button>
    
    .....
    // in your methods section
    methods: {
      handleClick() {
        this.data = true
        this.name(data)
      }
    }
    

    如果 data 是您从 v-if 中访问的内容,则可以改为将其传递给处理程序,如下所示,

    <button @click="handleClick(data)">click me</button>
    
    .....
    // in your methods section
    methods: {
      handleClick(data) {
        // if data is false, return and don't call this.name()
        if (!this.data) return
    
        this.name(data)
      }
    }
    

    没有看到更多您的代码,我不确定您的确切用例是什么,但我觉得您或许可以进一步简化上述代码。

    【讨论】:

      【解决方案2】:

      添加分号应该在点击时执行这两个表达式。

      <button @click="data = true; name(data)">click me</button>
      

      【讨论】:

      • 试过了,我要点击两次
      • 你应该分享更多你的代码。我不知道 dataname 在你的处理程序中是什么意思。
      • data = true 附加到 div 上的 v-if,如果单击显示 div 并将数据传递给函数
      • 您的数据和名称在哪里声明?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-19
      • 2017-07-30
      • 2011-09-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多