首页 > 解决方案 > 使用映射反应验证对象以避免空值

问题描述

以下验证的替代方法是什么&& !(Object.keys(dataSource.attributes).length === 0));,任何方式都是验证/标题/渲染的映射

isProductAttributesTabEmpty() {
  const dataSource = this.getDataSource();

  return !(dataSource
    && dataSource.attributes
    && !(Object.keys(dataSource.attributes).length === 0));
}

标签: javascriptreactjsobjectecmascript-6mapping

解决方案


您可能更喜欢的一种选择是将可选链接与与空对象交替使用以传递到Object.keys

isProductAttributesTabEmpty() {
  const dataSource = this.getDataSource();
  return Object.keys(dataSource?.attributes || {}).length === 0;
}

推荐阅读