JSDoc:模块和命名空间之间的关系是啥
Posted
技术标签:
【中文标题】JSDoc:模块和命名空间之间的关系是啥【英文标题】:JSDoc: What is a relationship between modules and namespacesJSDoc:模块和命名空间之间的关系是什么 【发布时间】:2015-06-10 18:21:25 【问题描述】:我在理解联合中命名空间和模块的用途时遇到了问题。例如我有一个班级Game.utils.Matrix
。我想将Game
注释为命名空间,将utils
注释为模块,将Matrix
注释为类:
/**
* @namespace Game
*/
/**
* @module utils
* @memberOf Game
*/
/**
* Create a matrix
* @constructor
*/
function Matrix()
它创建了一个文档,Matrix
类的名称路径是 Game.utils~ Matrix
,但是如果我遵循 Module
链接,它的名称路径是 Module: utils
,没有 Game
命名空间前缀,如果我遵循Game
链接不包含 utils
模块链接。
此外,我无法向该模块添加其他类,因为该类未显示在 utils
模块选项卡中:
/**
* Create Dictionary
* @memberOf Game.utils
* @constructor
*/
function Dictionary()
问题是:记录命名空间和模块的正确方法是什么?它们各自的用例是什么?
【问题讨论】:
【参考方案1】:我玩了一下,我想在命名空间中包含模块有点棘手。对我有用的是定义一个模块utils
和一个引用它的命名空间。该模块称为utils
,但不是Game.utils
,而是Game
,您可以看到一个链接到它的属性。
/**
* @namespace Game
* @property module:utils utils
*/
/**
* @module utils
*/
/**
* Create a matrix
* @class
*/
function Matrix()
【讨论】:
感谢您看这个有点颠倒。我试图用一个点来记录一个命名空间,但是点后面的对象当然是父命名空间的一个属性。以上是关于JSDoc:模块和命名空间之间的关系是啥的主要内容,如果未能解决你的问题,请参考以下文章