JSDoc中文文档(@use JSDoc)

JSDoc @callback 标签

目录

语法

@callback <namepath>

概述

@callback标签提供回调函数(可传递给其他函数)的描述,包括回调的参数和返回值。你可以包涵任何一个你能提供给@method标签。

一旦你定义了一个回调,你可以像@typedef 标签所定义的自定义类型那样使用它。尤其是,你可以使用回调的名称作为类型名称。这样您可以使你明确指明函数参数应包含那个回调。

如果你想要一个回调显示为某个特定类的类型定义,可以给回调加一个namepath,指示它是某个类的一个内部函数。您还可以定义一个引用多个类引用的全局的回调类型。

示例

示例: 描述一个指定类回调
/**
 * @class
 */
function Requester() {}

/**
 * Send a request.
 * @param {Requester~requestCallback} cb - The callback that handles the response.
 */
Requester.prototype.send = function(cb) {
    // code
};

/**
 * This callback is displayed as part of the Requester class.
 * @callback Requester~requestCallback
 * @param {number} responseCode
 * @param {string} responseMessage
 */
示例: 描述一个全局回调
/**
 * @class
 */
function Requester() {}

/**
 * Send a request.
 * @param {requestCallback} cb - The callback that handles the response.
 */
Requester.prototype.send = function(cb) {
    // code
};

/**
 * This callback is displayed as a global member.
 * @callback requestCallback
 * @param {number} responseCode
 * @param {string} responseMessage
 */