Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/40.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 使用JSDoc-3.3.0-alpha5记录原型特性和方法_Javascript_Node.js_Jsdoc_Jsdoc3 - Fatal编程技术网

Javascript 使用JSDoc-3.3.0-alpha5记录原型特性和方法

Javascript 使用JSDoc-3.3.0-alpha5记录原型特性和方法,javascript,node.js,jsdoc,jsdoc3,Javascript,Node.js,Jsdoc,Jsdoc3,我有一个名为FileDownloader的类,我尝试对它进行文档化,但是在输出文件中没有生成使用prototype声明的属性和方法 如标题所述,我使用jsdoc 3.3.0-alpha5 代码如下: /** * @class * @memberOf module:utils */ FileDownloader = function() {}; /** * @type {Boolean} */ FileDownloader.prototype.overwrite = false;

我有一个名为
FileDownloader
的类,我尝试对它进行文档化,但是在输出文件中没有生成使用
prototype
声明的属性和方法

如标题所述,我使用jsdoc 3.3.0-alpha5

代码如下:

/**
 * @class
 * @memberOf module:utils
 */
FileDownloader = function() {};    
/**
 * @type {Boolean}
 */
FileDownloader.prototype.overwrite = false;
/**
 * @type {String}
 */
FileDownloader.prototype.dir = config.dealImagePath;    
/**
 * @param {String} url
 * @param {Function} done
 * @param {Object} done.err
 * @param {String} done.file
 */
FileDownloader.prototype.download = function(url, done) {
    //...
};
以下是生成的文档:

new FileDownloader()
    | Source: path/to/file.js

有什么想法吗?

原因是文件下载程序描述中的
memberOf
。 您应该在设置模块之前,假定文件中的所有符号都是模块的成员

像这样

/** @module utils */

/**
 * @class
 */
var FileDownloader = function() {};

/**
 * @type {Boolean}
 */
FileDownloader.prototype.overwrite = false;
...

嗯,
@module utils
是在另一个文件上定义的。当我删除@memberOf标记时,它可以正常工作。是否要将
FileDownloader
设置为
utils
模块的一部分?似乎可以在几个文件中添加
@module utils
。我尝试在几个文件中添加
@module utils
,但这样会生成该模块的重复类。例如,如果我将
@module utils
放入Class1.js和Class2.js,那么它将在utils模块中输出2个Class1.js和2个Class2.js。