Можно ли иметь несколько функций .then? - PullRequest
0 голосов
/ 25 мая 2018

Я имею дело с ошибкой, веб-сайт работает нормально, но когда я добавляю дополнительную .then, она ломается.Мне просто интересно, правильно ли это закодировано, и если нет, можете ли вы мне помочь?

    // list 1
    $scope.get_this_list = function () {
        return SharedFunctions.issuePOSTOBJCmd(url + 'get_list_1' , {})
            .then(function (response) {
                $scope.list_one_options = response.data;
            }, function (error) {
                $scope.display_error = true;
                $scope.display_message = 'HTTP ERROR occured. Please check with Web/Dev Admin ' + error;
            });

    };

    // list 2
    $scope.get_that_list = function () {
        return SharedFunctions.issuePOSTOBJCmd(url + 'get_list_2' , {})
            .then(function (response) {
                $scope.list_two_options = response.data;
            }, function (error) {
                $scope.display_error = true;
                $scope.display_message = 'HTTP ERROR occured. Please check with Web/Dev Admin ' + error;
            });

    };
    
        $scope.get_list()
          .then($scope.get_this_list()),
           .then($scope.get_that_list());
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script>

для заполнения раскрывающегося списка.

Ответы [ 2 ]

0 голосов
/ 25 мая 2018

then() предназначен для цепочки.Чтобы использовать это, вы должны использовать синтаксис then(func1).then(func2).then(func3)

Вы можете добавить любое количество функций.Используйте catch() для обработки ошибки (в любом месте цепочки) и finaly() для выполнения кода, который должен выполняться в любом разрешении цепочки.

0 голосов
/ 25 мая 2018

Попробуйте удалить запятую между "thens", например:

$scope.get_list()
      .then($scope.get_this_list())
       .then($scope.get_that_list());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...