我第一次使用jsdoc并且它似乎不喜欢我的语法,我找不到它喜欢的任何东西:
(function(){ // issue #1
/**
* Creates an instance of a Cube animation
* @class
*/
function Cube(x, y, z){
...
}
/** @lends Cube.prototype */
cubeFrame.prototype = { // Issue #2
...
}
})();
问题#1:出于某种原因,我收到错误“警告:尝试将 someMethod 记录为未记录的符号Cube的成员。”如果我把那个包装功能留在里面。如果我把它评论出来,它就可以了。
问题#2:我正在对我的课做一些有点奇怪的事情,并且在我将@lends Cube.prototype
应用于Cube
时,无法找到让jsDoc注意的方法cubeFrame
1}}而不是cubeFrame
。我得到一个几乎相同的错误#1:“警告:尝试将getVoxel记录为未记录的符号 cubeFrame 的成员。”我不希望Cube
被记录,我希望它的原型进入{{1}}文档。
我可以重新编写这两行并获取生成的文档(然后是无效的代码),但我不想每次做出更改时都必须重新编写代码来生成文档!
答案 0 :(得分:3)
使用@name
标记让jsdoc知道对象的名称,然后知道类的名称,并在对象文字之前将@lends
标记替换为右边。像:
(function(){
/**
* Creates an instance of a Cube animation
* @class
* @name Cube
*/
function Cube(){
//...
}
cubeFrame.prototype = /** @lends Cube.prototype */{ // Issue #2
//...
/**
*/
someMethod: function(){}
};
})()