检查函数react redux组件中从mapStateToProps传递的props的真实性
Check truthiness of props passed from mapStateToProps in functional react redux component
我有三个组件,TypeList、ConnectedType(=connect(mapStateToProps)(Type
(和Type。Type将从TypeList(onClick, name
(和ConnectedType的mapStateToProps(onMiniPokemonClick, miniPokemon
(接收道具,TypeList将道具传递给ConnectedType。在映射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
是一个数组,您可以提供一个默认参数:
({onClick, name, onMiniPokemonClick, miniPokemon = []})
相关文章:
- 如何从reactjs中的按钮向函数传递props
- React.cloneElement:传递新的孩子或复制props.children
- 正在获取props值的子字符串-React
- 从ReactJS中的amplificPopup访问@props
- nextProps 总是与 this.props 相同,即使 props 在 componentWillReceiveP
- This.props.dispatch not a function - React-Redux
- 在 React 中嵌套组件,props 不会传递给子组件
- React props={this.refs.something} undefined
- TypeError:undefined不是对象(正在评估'this.props')-React Nati
- JavaScript: var {left, ...props} = this.props;
- this.props.history已被弃用(react router)
- 通过“;类“"实例”;使用ReactJS组件代替“props”文字
- 是否可以使用props克隆jqueryDOM对象
- 针对此.props.children的特定子项
- React.jsthis.props.data.map()不是函数
- Javascript 扩展类与 props
- React-Redux React-router Store 在 props 中不可用
- 通过 props 与方法调用传递数据做出反应
- 在 React.cloneElement() 中覆盖 props 时出错
- 检查函数react redux组件中从mapStateToProps传递的props的真实性