繁体   English   中英

用JSDoc 3语法指定对象类的正确方法是什么?

[英]What is the correct way to specify an object's class with the JSDoc 3 syntax?

如果我的代码创建了ecmascript 6之前的样式“类”,即构造函数,如下所示:

function MyDBPlugin() {
    // ...
}

并且我正在使用JSDoc3方案来记录另一个函数,该函数将MyDBPlugin的实例作为参数,我该如何表示MyDBPlugin对象?
我的第一个猜测是:

/**
 * Some function which takes an instance of MyDBPlugin as an argument
 *
 * @param {Object} plugin An instance of the MyDBPlugin class
 */
function query_database(plugin) {
    // ...
}

但是{Object}似乎没有任何信息,似乎使用类名{MyDBPlugin}更具描述性,例如:

/**
 * Some function which takes an instance of MyDBPlugin as an argument
 *
 * @param {MyDBPlugin} plugin An instance of the MyDBPlugin class
 */
function query_database(plugin) {
    // ...
}

如何用JSDoc语法表示MyDBPlugin对象?

来自文档: http : //usejsdoc.org/tags-type.html

如果是一门课,您可以直接使用它:

/**
* @param {myNamespace.MyClass}
*/

如果是结构,则可以按照与上述相同或您提到的方式创建自己的@typedef http://usejsdoc.org/tags-typedef.html并使用它:

/**
* Some function which takes an instance of MyDBPlugin as an argument
*
* @param {MyDBPlugin} plugin An instance of the MyDBPlugin class
*/
function query_database(plugin) {
  // ...
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM