Как оценивать состояние в режиме короткого замыкания в машинописном тексте? TypScript не разрешает &
или |
для булевого типа. Причина, по которой мне нужна проверка не короткого замыкания, я вызываю showErrors в функции isValueValid
.Как сделать условие короткого замыкания в Typcript?
Учитывая эту функцию
function isValue1Valid(){
if(value1 === 0) return true;
showErrors1();
return false;
}
function isValue2Valid(){
if(value2 === 0) return true;
showErrors2();
return false;
}
Тогда в моем состоянии
if(isValue2Valid() & isValue2Valid()){
//Submit data
}
Хотя я могу это сделать как этот
if(isValue2Valid() & isValue2Valid()){
//Submit data
return;
}
showErrors1()
showErrors2()
Но я чувствую, чтобы назвать его внутри естьV alueValid функция. На самом деле я всегда думаю, что при вызове show error по умолчанию всегда возникает ошибка.
Чтобы избежать «XY» Проблема: почему вы хотите, чтобы не короткое замыкание? (Я подозреваю, что вы зависите от побочных эффектов ... если так извлечь их из условного выражения.) – Richard
Действительно ли это как проблема XY. Если бы я смотрел на программирование, когда думал, что буду умным и что-то вроде 'if (process (otherStuff) && valid (stuff)), только чтобы понять, что он не работает, если я заменил условия. – vlaz
Я вызываю некоторую функцию внутри чего-то 'valid1() & valid2()'. – janmvtrinidad