如何使用ngdoc记录以角度返回类的工厂?

Yuv*_*rmi 8 javascript documentation jsdoc angularjs ngdoc

给定一个带有返回类的工厂的角度应用程序,如下:

angular.module('fooApp').factory('User', function(){
    function User(name){
        this.name = name;
    }

    User.prototype.greet = function(){
        return "Howdy, " + this.name;
    }

    return User;
});
Run Code Online (Sandbox Code Playgroud)

使用ngdoc(jsdoc角度使用的特殊风格),如何在不将其定义为方法的情况下记录初始化程序?

现在,这是我尝试过的:

/**
 * @ngdoc service
 * @name fooApp.User
 * @description User factory.
 */

angular.module('fooApp').factory('User', function(){

    /**
     * @ngdoc method
     * @methodOf fooApp.User
     * @name Initializer
     * @description Initializes a new User object with a name
     */
    function User(name){
        this.name = name;
    }

    User.prototype.greet = function(){
        return "Howdy, " + this.name;
    }

    return User;
});
Run Code Online (Sandbox Code Playgroud)

但是这会导致User初始化程序(User接受参数的函数name)被视为具有名称的方法Initializer,这使得尝试使用此代码的人感到困惑.

我已经尝试添加@constructor标志,但这不会影响html dgeni最终生成.

谢谢.


更新:删除了对dgeni.的引用.我的印象是我使用的插件(grunt-ngdocs)dgeni在幕后使用,但事实并非如此.

SGD*_*SGD 11

这就是我如何做到没有任何特别是Angular的经验:

/**
 * @ngdoc service
 * @name fooApp.User
 * @description User factory.
 */

angular.module('fooApp').factory('User', function(){

    /**
     * @ngdoc method
     * @constructs fooApp.User
     * @description Initializes a new User object with a name
     */
    function User(name){
        this.name = name;
    }

    User.prototype.greet = function(){
        return "Howdy, " + this.name;
    }

    return User;
});
Run Code Online (Sandbox Code Playgroud)