在 React 的 StrictMode 下,会启用一些额外的严格检查,其中包括某些生命周期方法可能会被调用多次。这可能会导致数据被 fetch 两次的问题。

为了避免数据被 fetch 两次,你可以按照以下步骤进行处理:

  1. 确保你的数据获取逻辑位于组件的'componentDidMount'生命周期方法中。这样可以确保数据只在组件挂载时被获取一次。
componentDidMount() {
  // 数据获取逻辑
}
  1. 在'componentDidMount'方法中,添加一个条件判断来避免重复获取数据。你可以使用组件的状态来标记数据是否已经被获取。
componentDidMount() {
  if (!this.state.data) {
    // 数据获取逻辑
  }
}
  1. 如果你使用了 React 的 Hooks,可以使用'useEffect'钩子来实现相同的效果。
useEffect(() => {
  if (!data) {
    // 数据获取逻辑
  }
}, []);

通过以上步骤,你可以确保数据只在组件挂载时被获取一次,避免数据被 fetch 两次的问题。

React StrictMode 下避免数据重复获取的最佳实践

原文地址: https://www.cveoy.top/t/topic/qg1w 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录