提供商'UserApi'必须从$ get factory方法

时间:2017-11-05 05:56:56

标签: javascript angularjs

在我的工厂..

var UserService = angular.module('UserService', []);

UserService.factory('UserApi', function ($http) {
var baseUrl = "http://localhost:59844/api";
var UserApi = {};

    UserApi.getUsers = function () {
        return $http.get(baseUrl + '/UserLogins');
    };
}); 

在我的控制器中:

var myApp = angular.module('MyApp', ['ngRoute','UserService']);
myApp.controller('HomeController', function ($scope, UserApi) {
getUsers();
function getUsers(){
    UserApi.getUsers.success(function (users) {
            $scope.users = users;
        }).error(function (error) {
            $scope.status = "Couldn't load data";
        })
    }
});

似乎UserApi没有返回任何值。但无法理解为什么?

1 个答案:

答案 0 :(得分:2)

您还需要返回服务对象

var UserService = angular.module('UserService', []);

UserService.factory('UserApi', function ($http) {
    var baseUrl = "http://localhost:59844/api";
    var UserApi = {};

    UserApi.getUsers = function () {
        return $http.get(baseUrl + '/UserLogins');
    };

    return UserApi;
});