Данные в угловых единицах отображаются и исчезают при использовании $scope

Мой файл ejs:
Экспресс приложение

</head>
<body data-ng-app="indexHomepage" data-ng-controller="indexController">
<div style="margin:100px;">
<h1>Express!</h1>


    <table data-ng-repeat="user in users">
        <tr>
            <td>
                <h4 align="center"><br/><br/>{{user}}<br/></h4>
            </td>
        </tr>
        <tr>
        </tr>
    </table>


</div>

<script src="controller/indexHomepageController.js"></script>
</body>
</html>

и мой угловой код контроллера:

  var indexHomepage = angular.module('indexHomepage', []);

  indexHomepage.controller('indexController', ['$scope', '$http',     function ($scope, $http) {


  $scope.getUsers = function () {
      $http.get('/getUsers').success(function (response) {

          if (response.responseErrorCode == 503) {
              console.log("No users in database");
          }
          else {

              $scope.users = response;
          }

      });
  }

  }]);

когда я помещаю console.log в другую часть контроллера вместо установки $scope.users, даже тогда он обнаруживается и сразу же исчезает. Но если я уберу функцию и просто сохраню:

      $http.get('/getUsers').success(function (response) {

          if (response.responseErrorCode == 503) {
              console.log("No users in database");
          }
          else {

              $scope.users = response;
          }

      });

здесь это работает.

Есть ли что-то, что мне не хватает?

1 ответ

У вас есть демо плункер? возможно, вы используете console.log вне блока else, и не забывайте, что вы используете службу $http, что вызов $ajax является обещанием.

$http.get ('/ getUsers'). then (function (response) {

      if (response.responseErrorCode == 503) {
          console.log("No users in database");
      }
      else {

          $scope.users = response;

console.log ("reponse is" + JSON.stringfy (response)); }

  }).catch(function(err){

console.log ('err' + err); })

Другие вопросы по тегам