Сокращение для назначения переменной на основе выражения OR - PullRequest
0 голосов
/ 27 апреля 2018

Есть ли сокращение для присвоения переменной выражению OR? Например, у меня на пользовательском интерфейсе есть кнопка, которая отключена в зависимости от состояния некоторых переменных.

this.disableButton = data && data.items.length < 2 && pending;

У меня также есть флажок, который определяет, будет ли указанная кнопка отключена или включена.

Итак, кнопка наконец отключена / включена на основе выражения, которое выглядит следующим образом:

this.disableButton = this.disableButton || !checked

И на моем шаблоне у меня что-то вроде:

<component [class.disabled]="disableButton"></component>

Мне было просто любопытно, если бы был способ сократить синтаксис вышеприведенного выражения. Что-то вроде:

this.disableButton ||= !checked

Спасибо

1 Ответ

0 голосов
/ 27 апреля 2018

Было бы более просто присвоить disableButton все сразу, вместо того, чтобы сначала назначить промежуточное значение для результата, а затем переназначить позже - это сбивает с толку. Поскольку только checked может определить результат, будет яснее, если вы сначала изучите его:

this.disableButton = !checked || (data && data.items.length < 2 && pending);
...