【问题标题】:How to pass $http data from Service to Controller in AngularJS如何在 AngularJS 中将 $http 数据从服务传递到控制器
【发布时间】:2019-01-12 08:32:55
【问题描述】:

当我将控制器传递给视图时,AngularJS 不工作

我有一个问题,我无法解决它。在我的简单应用程序(非常简单)中,我有一项提供用户信息的服务。在角度我有一个 mvc 试图将信息绑定到视图中。

问题:当我将控制器传递给视图时,在路由指令中,角度停止在视图中工作。我正在使用一个简单的测试 {{1+1}} 来验证 Angular 是否正常工作。

控制器:

App.controller("loginController", function ($scope, usersModel) {

    $scope.users = usersModel.getUsers();

})

型号

App.service("usersModel", function () {

    this.getUsers = function ($scope) {
        $http.get("http://localhost:50765/api/users");
    }});

【问题讨论】:

  • 您看到的错误是什么?

标签: angularjs angularjs-service angularjs-controller angularjs-http


【解决方案1】:

服务应该注入 $http 服务并返回它返回的承诺

App.service("usersModel", function ($http) {

    this.getUsers = function () {
        return $http.get("http://localhost:50765/api/users");
    }
});

并从promise中提取数据:

App.controller("loginController", function ($scope, usersModel) {

    var promise = usersModel.getUsers();
    promise.then(function(response) {
        $scope.users = response.data;
    });

})

【讨论】:

    猜你喜欢
    • 2021-10-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-04-18
    • 2014-11-10
    • 1970-01-01
    相关资源
    最近更新 更多