【问题标题】:Is there a way to call multiple function in onClick method without having to provide arguments?有没有办法在 onClick 方法中调用多个函数而无需提供参数?
【发布时间】:2019-06-13 11:32:22
【问题描述】:

我有两个函数,但没有参数,我只想在按钮的 onClick 方法上运行这两个函数。

我知道以下代码适用于反应。

onClick={handleSubmit}

有没有可能做类似的事情

onClick={handleSubmit; doSomethingElse;}

在 onClick 方法中,我需要调用 Formik 的 handleSubmit 方法。注意:我正在尝试从表单外的按钮调用 handleSubmit 方法。

React Formik bind the external button click with onSubmit function in <Formik>

正如本文所述,我可以通过 onClick={handleSubmit} 执行此操作来调用该函数。但我还需要在同一个 onClick 函数上调用另一个函数。如何从同一个 onClick 调用它们?

【问题讨论】:

  • 试试这样的onClick={() =&gt; { handleSubmit(); doSomething(); }}
  • 我没有 handleSubmit 和 doSomething 方法的参数。
  • 我们不需要上述onClick的参数。
  • `don't have arguments for handleSubmit 和 doSomething`是什么意思?
  • @PradipShrestha 请在您遇到问题的地方发布一些代码。

标签: reactjs formik


【解决方案1】:

只需创建另一个函数并在第三个函数中调用您的两个函数。

function auxilaryFunction (e) {
 handleSubmit(e);
 doSomethingElse(e);
}

然后更新onClick方法如下:-

onClick={auxilaryFunction}

现在它将调用您的两个函数。如果您不想使用 e(事件),只需将其从两个函数中删除即可。

【讨论】:

    【解决方案2】:
    onClick={this.handleClick}
    
    handleClick(){
       function1();
       function2();
    }
    

    【讨论】:

      【解决方案3】:

      使函数像

      handleSubmit = () => {
        this.doSomethingElse();
        this.doSomethingElse();
      

      } 当点击handleSubmit函数内部调用的自动函数

      【讨论】:

        猜你喜欢
        • 2022-11-17
        • 1970-01-01
        • 1970-01-01
        • 2010-10-19
        • 2021-06-29
        • 1970-01-01
        • 2020-12-31
        • 2020-07-03
        • 2022-10-04
        相关资源
        最近更新 更多