Javascript 对angularJs调用方法的Ajax调用

Javascript 对angularJs调用方法的Ajax调用,javascript,angularjs,ajax,asp.net-mvc,Javascript,Angularjs,Ajax,Asp.net Mvc,我仍然是使用这个angular的初学者,并且希望挖掘它从控制器获取返回值的能力 我只是想知道是否有可能使用ajax调用,然后获取返回值以传递给 我创建了一个函数,使用ajax从控制器获取值 function myData() { $.ajax({ url: '/Home/testGetMSSQL', type: 'GET', dataType: 'json', success: function (data) {

我仍然是使用这个angular的初学者,并且希望挖掘它从控制器获取返回值的能力

我只是想知道是否有可能使用ajax调用,然后获取返回值以传递给

我创建了一个函数,使用ajax从控制器获取值

function myData() {
    $.ajax({
        url: '/Home/testGetMSSQL',
        type: 'GET',
        dataType: 'json',
        success: function (data) {
            return data
        },
        error: function (jqXhr, textStatus, errorThrown) {
            alert(errorThrown);
        }
    });        
}
这是我的目标,我需要在角度调用中传递上面的函数,如下所示:

var app = angular.module('myApp', ['ui.bootstrap']);
    app.controller('myCtrl', function ($scope) {
        $scope.customers = myData(),
            $scope.people = [],
            $scope.currentPage = 1,
            $scope.numPerPage = 5,
            $scope.maxSize = 5;

        $scope.numPages = function () {
            return Math.ceil($scope.customers.length / $scope.numPerPage);
        };

        $scope.$watch('currentPage + numPerPage', function () {
            var begin = (($scope.currentPage - 1) * $scope.numPerPage)
                , end = begin + $scope.numPerPage;

            $scope.people = $scope.customers.slice(begin, end);
        });

    });
现在它不起作用,但如果我要传递一个硬编码值,它会起作用:

var app = angular.module('myApp', ['ui.bootstrap']);
    app.controller('myCtrl', function ($scope) {
        $scope.customers = [{
            "Name": "Alfreds Futterkiste",
            "City": "Berlin",
            "Country": "Germany"
        }],
            $scope.people = [],
            $scope.currentPage = 1,
            $scope.numPerPage = 5,
            $scope.maxSize = 5;

        $scope.numPages = function () {
            return Math.ceil($scope.customers.length / $scope.numPerPage);
        };

        $scope.$watch('currentPage + numPerPage', function () {
            var begin = (($scope.currentPage - 1) * $scope.numPerPage)
                , end = begin + $scope.numPerPage;

            $scope.people = $scope.customers.slice(begin, end);
        });

    });
我只是指这个例子:


感谢您的建议/意见。TIA

尝试
$http
而不是使用
ajax
,使其保持角度摘要循环


var app = angular.module('myApp', ['ui.bootstrap']);
    app.controller('myCtrl', function ($scope,$http) {
     $scope.spinner = true;
     $scope.init = function(){

        $http.get('/Home/testGetMSSQL').then(function(res){
            $scope.customers = res;
            $scope.spinner = false;
        })
     }
     $scope.people = [],
      $scope.currentPage = 1,
      $scope.numPerPage = 5,
      $scope.maxSize = 5;

      $scope.numPages = function () {
            return Math.ceil($scope.customers.length / $scope.numPerPage);
      };

        $scope.$watch('currentPage + numPerPage', function () {
            var begin = (($scope.currentPage - 1) * $scope.numPerPage)
                , end = begin + $scope.numPerPage;

            $scope.people = $scope.customers.slice(begin, end);
        });

    });
html
中:

<div ng-controller="myCtrl" ng-init="init()" >


注意:尝试放置某种微调器,以便在从服务器端获取
$scope.customer
之前禁用UI。

我尝试过,但在init()旁边的括号上出错。我已经在html上声明了它,但是在我的控制台上出现了这个错误。“未捕获的语法错误:意外标记{@Rockn'Roll:立即尝试。我在
init()之前错过了
$scope
。”