如何记录以下代码片段?当我离开它时Foo.bar
没有描述。当我添加@memberof
标记时,它将被记录为静态属性。添加@instance
标记不会改变任何内容。这是一个相当简单和通用的代码模式,因此它应该很容易记录,我是对的吗? 我讨厌jsdoc ......
/**
* @namespace
*/
var ns;
(function (ns) {
'use strict';
/**
* Constructs class
* @class ns.Foo
*/
function Foo() {
}
/**
* Blabla
*/
Foo.prototype.bar = function () {
};
ns.Foo = Foo;
})(ns || (ns = {}));
答案 0 :(得分:3)
使用@lends
告诉jsdoc您在函数中拥有的内容属于您的命名空间。这样您就不必在任何地方使用@memberof
来编写代码。当我在这里运行时,以下工作:
/**
* @namespace
*/
var ns;
(/** @lends ns */ function (ns) {
'use strict';
/**
* Constructs class
* @class
*/
function Foo() {
}
/**
* Blabla
*/
Foo.prototype.bar = function () {
};
ns.Foo = Foo;
})(ns || (ns = {}));
答案 1 :(得分:1)
我认为除了@instance之外,还需要添加@function和@memberof。这告诉jsdoc它是什么以及它适合的位置:
/**
* Blabla
* @function bar
* @memberof ns.Foo
* @instance
*/
Foo.prototype.bar = function () {
};
我也发现jsdoc钝了......挂在那里。 : - )