ionic/AngularJs service使用

列一个项目中用到factory的例子,基本上service原理都是单例。

services.factory('UserService', function ($http, $ionicLoading) {
  // 用户对象
  var user = null;

  return {
    /**
     * 获取用户对象
     * @returns 
     */
    getUser: function () {
      return user;
    },
    /**
     * 登录 - /v1/user/{userName}/apiKey
     * @param user
     */
    login: function (user) {
      $http.post(HOST_URL + "/user/" + user.userName + "apiKey", {
        password: md5(user.password),
        verifyCode: user.verifyCode,
        sessionMark: user.sessionMark
      }).success(function (response) {
        user = response;
      }).error(function (response) {
        $ionicLoading.show({
          template: response,
          duration: 2000
        });
      });
    }
  };
});