JSDoc 3命名空间麻烦

时间:2013-03-05 22:39:47

标签: javascript jsdoc

此代码

/**
 * * My namespace
 *
 * @namespace
 *
 * @type {Object}
 */
myNamespace = {

};

/**
 * My constructor
 *
 * @constructor
 */
myNamespace.MyConstructor = function () {

};

/**
 * My static class function
 *
 */
myNamespace.MyConstructor.myStaticFunction = function () {

};

编译并给我一个不错的html文件。但是,myConstructor语法将显示为new MyConstrutor()而不是new myNamespace.MyConstructor()MyConstructor

如果我将/** * My constructor * * @constructor * @memberOf {myNamespace} */ myNamespace.MyConstructor = function () { }; 的评论更改为

new myNamespace.MyConstructor()

然后我得到myNamespace.MyConstructor.myStaticFunction的预期结果。但是现在myStaticFunction甚至没有显示出来 文档,无论我在3条评论中的任何一条中尝试过哪种标记,都不会产生我期望的方式。

我尝试让myNamespace成为MyConstructormyNamespace.MyConstructor或{{1}}的成员 - 但它不会出现在任何地方的文档中。

我尝试使用旧的jsdoc-toolkit 2.4进行编译并且没有任何问题,甚至不必使用任何类型的memberOf表示法。这里真的很晚,所以我希望一双新眼睛可以帮助我。

1 个答案:

答案 0 :(得分:1)

我认为应该是

* @memberOf myNamespace

(没有花括号)

使用JSDoc 3.3.0 @memberOf {myNamespace} 会出错。