给定一个带有工厂的角度应用程序,它返回一个类,如下:
angular.module('fooApp').factory('User', function(){
function User(name){
this.name = name;
}
User.prototype.greet = function(){
return "Howdy, " + this.name;
}
return User;
});
使用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;
});
但这会导致User
初始值设定项(接受参数User
的{{1}}函数)被视为名为name
的方法,这会让人感到困惑人们试图使用这段代码。
我已尝试添加Initializer
标记,但这不会影响html 。@constructor
最终生成
谢谢。
更新:删除了对dgeni
的引用。我的印象是我使用的插件(grunt-ngdocs)在幕后使用dgeni
,但事实并非如此。
答案 0 :(得分: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;
});
答案 1 :(得分:2)
这是自以为是的答案 我在使用Angular文档方面遇到了麻烦,我甚至写了一篇关于它的博客Sigh, AngularJS Documentation
我的结论是建立一个新的。 Angular-jsdoc是结果。
以下是github的摘录。
AngularJS的JSDoc 3模板。
一个用于AngularJS的JSDoc插件和模板,没有别的!
答案 2 :(得分:1)
我创建了一个fork / pull请求,以便在grunt-ngdocs中添加@constructor支持gulp-ngdocs:Reference Source。所有这一切都是将基本用法部分更改为包含新关键字。
然后使用与@ SGD的答案类似但略有不同的方式。 确保服务上的@ngdoc指令指定了函数。
示例:
&trustCertificateKeyStoreUrl=file://path_to_truststore_file&trustCertificateKeyStorePassword=password