如果我们需要一个深层嵌套的道具,并且该值在每个级别都可能是不确定的。换句话说,我们需要检查每个级别的值是否未定义。这样做或完全避免这样做是什么好习惯?
一个简单的两级示例,假设深度为五或六...
const mapStateToProps = state => {
return {
formValues: state.form.section1 ?
state.form.section1.input1?
state.form.section1.input1.value
: {}
: {}
};
};
我发现了这篇文章:Cannot read property something of null, mapStateToProps,但我怀疑树是否高是个好习惯。
答案 0 :(得分:2)
我这样处理这种情况:
const mapStateToProps = state => {
return {
formValues: state.form && state.form.section1 && state.form.section1.input1 ?
state.form.section1.input1.value : {}
};
};
您可以避免嵌套三元运算,这不是一个好习惯。