4

我目前正在记录我的第一个真正的 AngularJs 应用程序,因为我正在使用带有 grunt-ngdocs 的 ngdocs 语法

我想知道是否有更好的方法来注释我的服务方法返回一个承诺(所以你知道你应该附加一个 .then() 而不是访问返回对象。

   * @returns {object} returns a promise

服务的完整上下文:

/**
 * @ngdoc service
 * @name appServices.Authentication
 * @requires $http
 * @description
 * Service used to authenticate request to an api. It injects a session parameter into each request if the token parameter is set.
 * (as a request param for a GET and as an extra body param for a POST)
 **/
module.factory('Authentication', ['$http', function ($http) {

    var token;

    /**
     * @ngdoc method
     * @name appServices.Authentication#login
     * @methodOf ng.service
     * @returns {object} returns a promise
     */
    function login(email, password) {
        return $http.post('/auth/login', {email: email, password: password})
            .then(function (response) {

                if (response.data.token) {
                    token = response.data.token;
                }
            });
    }

    function getToken() {
        return token;
    }

    return {
        login: login,
        token: getToken,
    };
}]);
4

1 回答 1

5

你可以简单地写:

* @returns {Promise} returns a promise
于 2015-08-13T11:03:51.743 回答