React Native - зачем использовать оператор && в массиве? - PullRequest
0 голосов
/ 07 декабря 2018

Я изучаю StyleSheet API и нашел следующее выражение в этой документации :

<Text style={[styles.title, this.props.isActive && styles.activeTitle]} />

Может кто-нибудь сказать, для чего используется этот оператор && внутри массива?Небольшой пример будет более ценным.Спасибо !!!

1 Ответ

0 голосов
/ 07 декабря 2018

В этой форме используется оператор короткого замыкания .

Если this.props.isActive дает true, тогда значение this.props.isActive && styles.activeTitle будет styles.activeTitle.

В противоположном случае, если this.props.isActive является "ложным" (принудительно установленным в false в логическом контексте), выражение будет закорочено и даст this.props.isActive.

Параметр style в React Nativeможет принять массив объектов стиля, которые объединяются.Ложное значение будет пропущено *, поэтому, если !isActive, тогда параметр стиля просто станет styles.title.

(* Слияние, вероятно, выполняется с использованием Object.assign, который будет копировать только перечисляемые и собственные свойства,и не будет выдавать ложные значения, но я точно не знаю. Кто-нибудь?)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...