javascript - 在 ReactJS 中检查数组是否有数据或为空时遇到问题

标签 javascript reactjs

我的状态中有数组 我将状态默认值设置为空数组 []。加载 API 请求后,我需要使用加载器,直到数据准备就绪。所以你使用这样的条件:

(if array length  === 0  loader will show otherwise data will show)

但是当 API 返回空数据时,我想显示没有可用数据。

最好的方法是什么?

我的代码如下 - 如果 API 返回空结果,我如何检查条件?

this.state.offer.length == 0 ?  <Loader /> : <OfferList />

最佳答案

最简单的方法是将默认值设置为 undefined而不是空数组。然后在你的渲染检查中:

  • undefined意味着它的加载
  • 空数组表示没有数据,所以显示消息
  • 可以显示数据的非空数组

{!this.state.offer ? <Loader /> : this.state.offer.length ? <OfferList /> : <span>No data available</span>}

关于javascript - 在 ReactJS 中检查数组是否有数据或为空时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47831014/

相关文章:

javascript - 用于文件 CSV 导入的 API 设计,最佳实践方法?

javascript - intellij网络 Storm : how to associate files with left side navigation window

javascript - 结合 jQuery 同位素和延迟加载

javascript - 使用 jquery 进行两种方式的数据绑定(bind)

javascript - 使用 Leaflet 检测用户何时达到 maxBounds

css - 使用 Styled Components 将多个样式属性添加到单个主题属性

javascript - 在 React 渲染中循环对象

javascript - 具有多个setstate的React js单个函数

javascript - 如果导入 events-polyfill,React Datepicker 将无法正常工作

twitter-bootstrap - 如何使用bootstrap navbar组件实现react路由?