React Native - 为什么在数组中使用&&运算符?

Pur*_*tes 3 javascript jsx ecmascript-6 reactjs react-native

我正在学习StyleSheetapi并在本文档中找到以下表达式:

<Text style={[styles.title, this.props.isActive && styles.activeTitle]} />
Run Code Online (Sandbox Code Playgroud)

任何人都可以告诉这个&&运算符在数组内部使用了什么?一个小例子将更受赞赏.谢谢 !!!

Sam*_*ult 8

这种形式利用了操作员的短路.

如果this.props.isActive收益率true,则该值this.props.isActive && styles.activeTitlestyles.activeTitle.

在相反的情况下,如果this.props.isActive是"falsy"(在布尔上下文中强制为false),则表达式将短路并产生this.props.isActive.

styleReact Native中的参数可以采用合并的样式对象数组.将跳过false值*,因此,如果!isActive,则样式参数将简单地变为styles.title.

(*合并可能是使用Object.assign哪个只会复制可枚举和自己的属性,并且不会抛出假值;但我不确定这一点.有人吗?)