Как получить доступ к переменным $ scope на AngularJS из контроллера для просмотра - PullRequest
0 голосов
/ 05 февраля 2019

У меня есть простая переменная области видимости на контроллере AngularJS.Я назначил ему конкретное значение конечной точки, например, так:

$scope.isItAvailable = endpoint.IS_IT_AVAILABLE;

Как мне назначить его в моем представлении (HTML), чтобы иметь возможность сказать ng-if, если оно истинно, показать его, если оноявляется ложным скрыть его.

Я пробовал реализовать функцию, у меня есть ctrl.checkIfavailable и вызов его в HTML, но ничего не помогает.Значение никогда не читается со стороны вида.

Как-то так :

  $scope.checkIfItIsAvailable = () => {
    return $scope.isZKAvailable
  }

И вызывается это в ng-if.Пробовал также в качестве контроллера, но не работал.

Я утешил.лог ответа от сервера, и я получаю логическое значение true or false, в зависимости от ситуации

Вотмой код для HTML:

<div class="col-lg-8" ng-if="Ctrl.isItAvailable">
.... // More code here
</div>

и в контроллере:

  $scope.isItAvailable = endpoint.IS_IT_AVAILABLE;

  console.log(endpoints.IS_IT_AVAILABLE); // This returns the boolean value I 
  // want to access

текущий результат Теперь, если я оставлю нг-если, вот так,Я не вижу элемент, так как он вообще к нему не обращается.

Ожидаемые результаты Я хочу показать / скрыть элемент, в зависимости от значения isItAvailable.

1 Ответ

0 голосов
/ 05 февраля 2019

Когда вы подключили его к $scope, просто используйте его вот так

<div class="col-lg-8" ng-if="isItAvailable">

</div>

Если вы хотите использовать синтаксис ControllerAs, определите от isItAvailable до this вместо $scopeв контроллере, а затем назовите ng-controller="yourControllerName as Ctrl" в представлении.Затем вы ссылаетесь на isItAvailable как Ctrl.isItAvailable

...