javascript - React Hooks 异步最佳实践
问题描述
现在有了 use useEffect
s,就有了componentDidMount
一个带有 Hooks 的 React Component 的替代品。
场景“对服务器的初始唯一调用”:
为了实现这一点,DependencyList(的第二个参数useEffect
)useEffect
每次都应该是一个空数组,否则应用程序将向服务器发送每个状态更改的获取调用。
这意味着,这是获取数据的最佳实践
useEffect(() => {
console.log("useEffect, fetchData here");
}, []);
[]
使用DependencyList 参数来禁用请求每个状态更改的服务器是最佳实践吗?
解决方案
是的。这是最好的方法。
从反应文档:
传入一个空的输入数组 [] 告诉 React 你的效果不依赖于组件中的任何值,因此效果只会在挂载时运行并在卸载时清理;它不会在更新时运行。
useEffect
是一个非常强大的,也是我最喜欢的钩子。您可以通过将一个或多个变量传递到第二个参数数组来监控状态变化的一个或多个变量,或者您可以使用您正在使用的方法来监听挂载和卸载。
推荐阅读
- php - 将旧的 mysql 调用重写为新的 mysqli_real_query
- amazon-web-services - 发送 POST 请求返回“文本为空”
- javascript - 如何获得全时使用 Javascript 显示
- javascript - 如何在不忽略重定向的情况下将道具传递给私有路由
- node.js - PreSignUP 在 AWS Lambda 函数中因错误连接 ECONNREFUSED 127.0.0.1:443 而失败
- pentaho - 在 Pentaho 数据集成中按字段名称而不是位置读取 CSV 输入文件
- python - 电影票费用计算器
- r - 使用地图函数更改数据帧的编码
- python - 为美丽的汤写这个的正确方法是什么
- html - 侧栏中的响应式页脚重叠 li 标签