Vue $将参数传递给已经有参数的函数

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Vue $将参数传递给已经有参数的函数相关的知识,希望对你有一定的参考价值。

我在我的组件中有这个:

template: <input @blur="$emit('customEvent', arg1)" v-model="arg1">

这在我的html模板中:

<component @customEvent="method1(arg2)"></component>

我需要为arg2函数提供一个参数(method1()),但我还需要从arg1获取$emit()

我试过这个(进入Vue实例):

method1(arg2, arg1) {
      console.log("This is the arg2: " + arg2);
      console.log("This is the arg1: " + arg1);
    }

当然,我试图扭转他们,不工作,arg1is没有通过,但更换。

我知道它必须有一个命名空间(也许像arg1=arg1),但我没有找到这样的东西。

答案

它可以通过将$event传递给方法来工作。

$event将是您在emit函数中传递的有效负载。当你做$emit('customEvent', arg1)时,arg1将作为$event传递给@customEvent。

<component @customEvent="method1($event, arg2)"></component>

在方法中:

method1(arg1, arg2) {
  console.log("This is the arg2: " + arg2);
  console.log("This is the arg1: " + arg1);
}

概念证明:https://jsfiddle.net/jacobgoh101/e8a5k3ph/1/

以上是关于Vue $将参数传递给已经有参数的函数的主要内容,如果未能解决你的问题,请参考以下文章

将php参数传递给bladee内部的vue函数

如何将不同的参数传递给片段 [导航] Android

将参数传递给 XML 布局中定义的片段

将特定的 $attrs 参数传递给 Vue 组件

如何使用底部导航视图和 Android 导航组件将参数传递给片段?

将数组中的所有值作为参数传递给函数