ajax调用后的ng-repeat

时间:2015-12-04 01:20:08

标签: javascript angularjs ajax

我很沮丧,

我收到了$http电话

ApiService.get_request_params("api/endpoint").then(
    function(data) {
        $scope.customers = data
    },
    function(err) {
    }
);

$scope.customers应绑定到ng-repeat 我可以console.log $ scope.customers 我也可以在$ scope.customers中输入一个手动数组,它可以很好地工作。

我尝试了$scope.$apply();但是当然还有$ http $申请正在进行中。

如何在ajax调用后更新视图?任何人!!

2 个答案:

答案 0 :(得分:1)

当您收到来自http的响应时,响应正文位于数据对象中。我需要看看你的APIService,但我敢打赌,这段代码可行:

ApiService.get_request_params("api/endpoint")
                .then(function(answer) {          
                    $scope.customers = answer.data
                }, function(err) {

                });

答案 1 :(得分:1)

Angular UI Bootstrap的Typeahead在绑定时不会对数组的更改进行$ watchCollection。您有两个选项,使用异步方法或只是在$scope.customers调用之前不定义ApiService

对于async方法,只需传入一个返回promise而不是数组的函数。 uib-typeahead="address for address in getLocation($viewValue)"