【问题标题】:Using Angular Factory Service使用 Angular 工厂服务
【发布时间】:2016-07-04 08:42:24
【问题描述】:

我正在尝试关注 Code School 的 Angular Soup to Bits 保持敏锐。
我已经到了创建笔记工厂服务并实现$resource 服务的地步。

我先$scope.notes = Note.query(),然后console.log($scope.notes),但我的浏览器的开发工具控制台中什么也没有出现。我做错了什么?

可以在here 找到我的 GitHub 存储库以及发生这种情况的最新提交。

【问题讨论】:

    标签: angularjs angularjs-controller ngresource angularjs-ng-resource


    【解决方案1】:

    $resource 实现$scope.notes = Note.query() 的方式将在Note.query() promise 得到解决后直接将从ajax 返回的数据分配给$scope.notes 变量。

    但您的做法是,您希望在拨打电话后立即从async 获得响应,为了在控制台中获得响应,您应该等到该承诺得到解决。

    Note.query().$promise.then(function(response){
        $scope.notes = response;
        console.log($scope.notes);
    });
    

    更新

    另一个问题是 OP 错误地注册了 NotesIndexController 控制器的多个实例,因此许多控制器正在注册但最后一个控制器实例被绑定到视图。通过更正所有其他控制器名称。此问题已修复。

    【讨论】:

    • 不,什么都没有。
    • @gh0st 你确定吗,服务器确实使用该 URL 响应记录?
    • 是的,我确定。我使用curl对其进行了测试。
    • @gh0st 我可以知道你用什么网址curl吗?
    • localhost:8000/notes 返回所有,localhost:8000/notes/1 返回 ID 1 的注释。
    猜你喜欢
    • 2019-12-26
    • 2013-07-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多