Javascript 如何检查ReactNative中是否存在属性?
在ReactNative中,我有一个属性,它可能传递给类对象,也可能不传递给类对象。有没有像Java中那样的方法来检查属性是否为null 在我的例子中,我有这个.props.overrideAccessibilityLabel,它可能会被传递,也可能不会被传递。我只想在它被传下来时使用它:Javascript 如何检查ReactNative中是否存在属性?,javascript,react-native,Javascript,React Native,在ReactNative中,我有一个属性,它可能传递给类对象,也可能不传递给类对象。有没有像Java中那样的方法来检查属性是否为null 在我的例子中,我有这个.props.overrideAccessibilityLabel,它可能会被传递,也可能不会被传递。我只想在它被传下来时使用它: render() { return ( <View accessibilityLabel={this.props.currMessage.text}
render() {
return (
<View
accessibilityLabel={this.props.currMessage.text}
if {...props.myAccessibilityLabel} {
...accessibilityLabel={...props.myAccessibilityLabel}
}
>
<Text1
// ...
>
</Text1>
</View>
);
}
render(){
返回(
);
}
在ReactNative中,当属性不存在时,它的计算结果为false。
(空字符串也被计算为false。)因此使用“if”检查属性是否存在是正确的方法
function myFunc(x) {
if (x) {
return true;
} else {
return false;
}
}
var a1 = {}
a1.a = "abc"
a1.b = ""
var ra=myFunc(a1.a)
var rb=myFunc(a1.b)
var rc=myFunc(a1.b)
console.log("ra=" + ra + "; rb=" + rb + "; rc=" + rc)
输出为:
ra=true; rb=false; rc=false
因此,属性与变量的处理方式不同。检查空属性只会导致false,从而引用未定义的变量会导致异常。但在这种情况下,单行“if”语句效果最好
<View
accessibilityLabel={this.props.currMessage.text ?
this.props.currMessage.text : this. props.myAccessibilityLabel}
>
<Text1
// ...
>
</Text1>
</View>
您有代码吗?这是否有用的具体实例?否则,这是的副本