javascript - 无法使用 Promise 绑定(bind)到 Angular 存储库数据

标签 javascript json angularjs repository q

我正在尝试将存储库模式与 Angular 一起使用。当我调用我的存储库时,我可以看到 json 通过网络返回。但我无法绑定(bind)它。

我正在将存储库注入(inject)到模块中...出了什么问题?

blogApp.factory('blogEntryRepository', function ($http, $q) {
    return {
        get: function() {
            var deferred = $q.defer();
            $http.get('/blogentry').success(deferred.resolve).error(deferred.reject);
            return deferred.promise;
        }
    }
});


blogApp.controller("HomeCtrl", function($scope, blogEntryRepository) {
    blogEntryRepository.get().then($scope.blogEntries = blogEntryRepository);
});

<div>
    home  
    <div ng-repeat="blogEntry in blogEntries">
        <div>Asdf
            {{blogEntry.title}}
        </div>
    </div>
</div>

页面输出

home
Asdf
{}

json 响应是

[{"title":"Launched an AngularJS 1.2 site!","date":"2014-05-21T00:00:00"},{"title":"Title2","date":"2014-05-22T00:00:00"}]

它位于 ng-app 标记内。页面上有一个 ng-view 标签。

我可以确认我可以绑定(bind)到硬编码变量。

使用 Angular 1.2

最佳答案

尝试

blogApp.controller("HomeCtrl", function($scope, blogEntryRepository) {
    blogEntryRepository.get().then(function(result){$scope.blogEntries = result});
});

关于javascript - 无法使用 Promise 绑定(bind)到 Angular 存储库数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23796389/

相关文章:

javascript - 如何测试指令链接中定义的 $on 事件

jquery - Google Places Photos API 以什么格式返回图像?

javascript - 在中心模式光滑 slider 中禁用下一个/上一个部分 View

javascript - 在jquery中,如何编写一个函数将一个DIV的高度一次复制到另一个DIV?

php - 这会有副作用吗?

javascript - JSON 可以序列化使用 *functions* 作为键的数组吗?

javascript - 服务中的 Angular 函数不被视为函数

java - 是否可以在javascript中直接调用Pubsub的订阅拉取,而不是调用java方法来获取数据?

javascript - 通过 AJAX 将值传递到数据库

c# - 将 json 字符串中的 bool 值转换为 int