数组作为React中的状态?

时间:2019-03-04 08:38:27

标签: javascript reactjs

当尝试像这样打印出数组时,如何确保我的数组不为空? ClientCodeRegional是我的数组,有时可能为空。

      {
       this.state.user.ClientCodeRegional[0]?
       <ul>{this.state.user.ClientCodeRegional.map((number) => <li key={number.toString()}>{number}</li>) }</ul>
        :null
      }

4 个答案:

答案 0 :(得分:2)

您可以使用

sort_order_column

答案 1 :(得分:0)

您可以检查数组长度。

  {
   this.state.user.ClientCodeRegional.lenght && 
     <ul>{this.state.user.ClientCodeRegional.map((number) => 
        <li key={number.toString()}>{number}</li>) }
     </ul>
  }

答案 2 :(得分:0)

检查数组ClientCodeRegional的长度,如果长度> 0,则在ClientCodeRegional上显示带有循环的列表。

 {
   this.state.user.ClientCodeRegional.length>0 && 
     <ul>{this.state.user.ClientCodeRegional.map((number) => 
        <li key={number.toString()}>{number}</li>) }</ul>
 }

答案 3 :(得分:0)

对于较短的代码,您应该使用解构分配

const { ClientCodeRegional } = this.state.user

{
  ClientCodeRegional.length &&
  <ul>
   { ClientCodeRegional.map( number => <li key={number}>{number}</li>) }
  </ul>
}

我只是想知道为什么需要将number.toString()属性转换为key属性。我认为它会自动转换。