Угловые переменные не обновляются на странице при получении данных из скрипта Google - PullRequest
0 голосов
/ 24 сентября 2018

Выполнение одного приложения Google Script.С методом на стороне сервера, который возвращает массив строк.getClassRoomList().

Подскажите, пожалуйста, что не так с моим текущим HTML?Как обработчик успеха работает все хорошо на ответ.Но сообщение переменной ng не отражается на странице;в то время как jQuery заполняет таблицу.

        <!DOCTYPE html>
        <html ng-app="myApp">
            <head>
                <base target="_top">
                <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
                <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.4.8/angular.js"></script>
                <script>
                    var app = angular.module('myApp',[]);
                    app.controller('mainCtrl',function($scope){
                    $scope.message = [];
                    $scope.populateTable = function(array){
                        //Setting ng variable; but the page doesn't show anything
                        $scope.message = array;

                        //Setting the Table by JQuery; it does work.
                        var table = $('#myTable');
                        table.empty();
                        for (var i = 0; i < array.length; i++) {
                            var item = '<tr><td><div class="classname">' + array[i] +'</div></td></tr>';
                            table.append(item);
                        }
                    };
                    $scope.mainClick = function(){
                        $scope.message = $scope.message + 'chirag';
                        google.script.run.withSuccessHandler($scope.populateTable).getClassRoomList();
                    };
                    });
                </script>
            </head>
            <body ng-controller="mainCtrl">
                <button ng-click="mainClick()">Proceed</button>
                <table id="myTable"></table>
                <div ng-bind="message"></div>
            </body>
        </html>

1 Ответ

0 голосов
/ 09 октября 2018

Это работает.Благодарю.google.script.run.withSuccessHandler((e) => {$scope.populateTable(e); $scope.$apply();}).getClassRoomList();

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