javascript - useEffect 在它之外读取数组
问题描述
所以假设我有以下字符串数组:
const types = [
"type1",
"type2",
"type3" ]
然后我也有一个这样的 useEffect 钩子:
useEffect( () => {
if (someOtherString in types) { doSomething...}
}, [someOtherString])
上述 useEffect 钩子的问题在于它会要求添加对“类型”变量的依赖。因此,如果我将其添加到依赖项列表中:
,[someOtherString, types])
它将重新渲染大约 3 或 4 次。
如何创建一个 useEffect 来读取在其外部定义的数组或字典,而不将其添加到依赖项中?
解决方案
将条件本身作为依赖项怎么样?例子:
const shouldDoSomething = someOtherString in types;
useEffect(() => {
if (shouldDoSomething) { /** Do something ! */ }
}, [shouldDoSomething])
推荐阅读
- r - 如何在 dplyr 中使用 match 根据外部向量对列进行排序?
- javascript - 如何使用 vue.js 和 html 创建登录页面?
- wso2 - WSO2 IS MFA 与 WSO2 APIM 本地/共享范围 + RBAC 集成
- spring-security - 在 Reactive spring security 中基于 url 模式应用不同的规则
- tensorflow - Apache Beam SIGKILL
- c# - .NET CORE 后台服务意外停止
- android - 出现错误时如何在颤动中更改背景颜色文本框?
- javascript - css 不能在 ios 上运行
- apache-spark - spark中发生ExecutorLostFailure时,executor中的数据是如何处理的?
- python - 无法单击带有 Selenium 的单选按钮