【发布时间】:2019-12-20 19:15:34
【问题描述】:
我正在从 API 传递一个数组,并想知道该数组是否为空,以打印错误消息。
查看不同的站点,它们都没有工作。
{this.props.items ? errorMessage : <h1>Working</h1>}
【问题讨论】:
标签: reactjs
我正在从 API 传递一个数组,并想知道该数组是否为空,以打印错误消息。
查看不同的站点,它们都没有工作。
{this.props.items ? errorMessage : <h1>Working</h1>}
【问题讨论】:
标签: reactjs
你可以使用length属性
{this.props.items.length == 0 ? errorMessage : <h1>Working</h1>}
【讨论】:
this.props.items && this.props.items.length > 0 ? <h1>Working</h1> : errorMessage
【讨论】:
先检查天气数组是否存在然后检查数组的长度是否大于0,总是使用双重否定将该数组转换为布尔类型
{!!this.props.items && this.props.items.length > 0 ? <h1>Working</h1> : errorMessage}
【讨论】:
检查lodash 库。对这种需求很有帮助。
https://lodash.com/docs/4.17.15#isEmpty
有了这个,你可以使用:
{isEmpty(this.props.items) ? errorMessage: <h1>Working</h1>}
【讨论】:
在检查长度之前检查类型更安全,因为类型 string 也可以返回长度
{ Array.isArray(this.props.items) && this.props.items.length < 1 ? errorMessage : <h1>Working</h1> }
【讨论】: