useEffect读取数组之外的数组

时间:2020-09-02 10:37:11

标签: javascript reactjs

因此,假设我有以下字符串数组:

const types = [
    "type1",
    "type2",
    "type3" ]

然后我也有一个useEffect挂钩,像这样:

useEffect( () => {
    if (someOtherString in types) { doSomething...}
}, [someOtherString])

上述useEffect挂钩的问题在于,它将要求添加对“ types”变量的依赖。因此,如果我将其添加到依赖项列表中:

,[someOtherString, types])

它将重新渲染大约3或4次。

如何创建一个useEffect来读取数组或在其外部定义的字典,而无需将其添加到依赖项中?

1 个答案:

答案 0 :(得分:0)

如何将条件本身作为依赖项呢? 示例:

const shouldDoSomething = someOtherString in types;

useEffect(() => {
  if (shouldDoSomething) { /** Do something ! */ }
}, [shouldDoSomething])