繁体   English   中英

检查从功能状态redux组件中的mapStateToProps传递的道具的真实性

[英]Check truthiness of props passed from mapStateToProps in functional react redux component

我有3个组成部分,TYPELIST,ConnectedType( =connect(mapStateToProps)(Type )和类型 。类型将收到来自TYPELIST道具( onClick, name )通过道具来ConnectedType以及ConnectedType的mapStateToProps( onMiniPokemonClick, miniPokemon )。怎么办我miniPokemon映射之前进行检查,是否可以在功能组件上进行逻辑处理,还是必须使其成为一个类并在其中创建一个辅助函数?

const Type = ({onClick, name, onMiniPokemonClick, miniPokemon}) => (
  <li
    onClick={onClick}
  >
    {name}
    <ul>
      {
        if (miniPokemon) {
          miniPokemon.map(function (pokemon, idx) {
            return (<MiniPokemon onClick={() => onMiniPokemonClick(pokemon.name)} name={pokemon.name}/>)
          })
        }
      }
    </ul>
  </li>
)

您需要做的就是使用方括号允许多行功能主体

const Type = ({onClick, name, onMiniPokemonClick, miniPokemon}) => {
   // some logic   
   return (
      <li
        onClick={onClick}
      >...
      </li>
   )
}

或者,如果仅需要确保在miniPokemon null / undefined值时miniPokemon是一个数组,则可以提供一个默认参数:

({onClick, name, onMiniPokemonClick, miniPokemon = []})

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM