检查是否有其他功能正在运行

问题描述 投票:-1回答:1

我使用react-select来过滤我的应用程序上的标签。因此,每当用户输入标签时,它将根据用户输入的标签生成关键字。

让我们说我的标签是这样的:

enter image description here

因此,它将使用cat和fish关键字生成。

在我使用react-select的selectfield中,标签会自动添加到我的selectfield中,如下所示:

enter image description here

那已经在我的应用程序中完成。

我现在想要的是,过滤用户用selectfield输入的标签,所以每当用户选择cat时,它只会显示cat关键字。

上面的标签是由这个函数生成的,这只是我代码的片段:

onSubmit = tags => {
  if(tags.length === 0) {
    userError('Please input at least one keyword');
  } else {
    tags.forEach((tag) => {
      const marketplace = selectedCountry.value;
      apiCallRequest(marketplace, tag.value, this.userIP);
      if (this.handleChange()){  // call handleChange function here
        apiCallRequest(marketplace, tag.value=this.state.selectedOption, this.userIP);
        alert('hello from here :)')
        return onsubmit
      }
    });
  }
}

上述功能的目的是从用户输入的标签中生成关键字。

我的反应选择代码就像Installation and usage,它只是来自文档的示例代码:

handleChange = (selectedOption) => {
    this.setState({ selectedOption });
    console.log(`Option selected:`, selectedOption);
  }

那个handleChange()叫onChange事件。

因此,在这种情况下,每当用户选择其中一个选择字段时,它将调用handleChange()函数。

所以,我想要的是,每当函数调用时,我希望onSubmit函数也自动更改它。

那么,有可能这样做吗?我希望我的问题现在更清楚了,如果不是我会再次编辑:)

javascript reactjs function react-native recursion
1个回答
2
投票

在浏览器(以及大多数其他JavaScript主机环境)上,每个领域只有一个线程(全局环境和相关的内部对象等,如与浏览器窗口关联的JavaScript环境)。假设handleChangeonSubmit处于相同的领域(我确信它们是相同的),如果你的onSubmit函数正在运行,你知道你的handleChange函数没有运行,因为handleChange不会调用onSubmit。当handleChange“活跃”时,onSubmit可以“活跃”的唯一方法是handleChange称为onSubmit

© www.soinside.com 2019 - 2024. All rights reserved.