LINUX.ORG.RU

История изменений

Исправление Nervous, (текущая версия) :

что делает эта строка?

{hasOAuthProviders && (

Это выражение «логическое И». Если левая часть (hasOAuthProviders) имеет истинное значение, будет вычислена следующая (в данном случае последняя) часть, иначе результатом выражения будет ложное значение левой части (обычно false/null/undefined/пустая строка), которые React просто пропускает при рендеринге.

Есть небольшая засада — 0 тоже ложное значение в булевом контексте, но его React не пропустит, а отрендерит как есть. Мораль сей басни такова — старайтесь использовать в булевом контексте только булевы значения. Если память подводит — используйте TypeScript, он поможет.

Исходная версия Nervous, :

что делает эта строка?

{hasOAuthProviders && (

Это выражение «логическое ИЛИ». Если левая часть (hasOAuthProviders) имеет истинное значение, будет вычислена следующая (в данном случае последняя) часть, иначе результатом выражения будет ложное значение левой части (обычно false/null/undefined/пустая строка), которые React просто пропускает при рендеринге.

Есть небольшая засада — 0 тоже ложное значение в булевом контексте, но его React не пропустит, а отрендерит как есть. Мораль сей басни такова — старайтесь использовать в булевом контексте только булевы значения. Если память подводит — используйте TypeScript, он поможет.