Почему мой оператор OR в angularjs не работает? - PullRequest
0 голосов
/ 24 сентября 2018

Я использую условие if в angularjs для проверки состояния! = Доставлено или статус! = Отменено, а затем выдается сообщение

    if($scope.itemDeliveredStatus != "Canceled" || $scop.itemDeliveredStatus != "Delivered"))
{
    alert("Please set item status to Delivered! or Canceled!");
    return false;
}

Ответы [ 2 ]

0 голосов
/ 24 сентября 2018

Сначала у вас есть опечатка, но это только одна маленькая проблема.Другая проблема - логика.

Ваша логика неверна с использованием ИЛИ.Простой пример ниже показывает вам, что.

var foo = "A";
if (foo !== "A" || foo !== "B") {
  console.log("WHY?")
}

Почему?Поскольку вы говорите, что для того, чтобы оператор if был истинным, переменная foo должна быть равна двум вещам.

Вы хотите сказать, что если foo не равен A, а foo не равен B,чем показать ошибку.

var foo = "A";
if (foo !== "A" && foo !== "B") {
  console.log("WHY?")
} else {
  console.log("Better!!!")
}

Итак, с двумя исправленными проблемами ваш код будет выглядеть так:

if ($scope.itemDeliveredStatus != "Canceled" && $scope.itemDeliveredStatus != "Delivered") { /*.. code */ }
0 голосов
/ 24 сентября 2018

Опечатка во втором условии, вы ставите $scop вместо $scope:

$scop.itemDeliveredStatus

и дополнительные ) в конце той строки, которые не нужны

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