用$ ngresource promise Angularjs填充select标签

时间:2016-01-21 22:50:40

标签: javascript angularjs angular-promise ngresource

我有一个选择页面,我想填充从服务器获得的数据。我正在使用服务来检索这些记录,但是如何从promise中访问这些值并将它们放在select标签的ng-option中?

从资源中获取数据:

  $scope.categories = Category.all({sorting:"asc"});

资源:

factory('Category', function ($resource) {
    return $resource('api/categories/:id', {}, {
        all: {method: "GET", isArray: true, params: {sorting: '@sorting'}},
        update: {
            method: "PUT",
            params: {
                id: "@id"
            }
        }
    })
}).

1 个答案:

答案 0 :(得分:1)

Category.all()的调用应返回一个数组,当相应的http请求返回时,该数组将填充检索到的值。如果要在完成时运行一些代码,可以传递这样的回调:

$scope.categories = Category.all({sorting:"asc"}, function() {
    // do something with the $scope.categories
});

你也可以获得这样的承诺:

$scope.categories = Category.all({sorting:"asc"})
    .$promise.then(function(categories) {
        // do something with the categories
    });