JSDoc中文文档(@use JSDoc)

JSDoc @event 标签

目录

语法

@event <className>#[event:]<eventName>

概述

@event标签允许您描述一个可触发的事件,一个典型的事件是由对象定义的一组属性来表示。

使用@event标签来定义事件的具体类型,您可以使用@fires标记,以表明这个种方法可以触发该事件。你还可以使用@listens标签,以指示表明用这个表示来侦听该事件。

JSDoc自动预先考虑命名空间的每个event: 事件的名称。在一般情况下,当您在其他的doclet链接到该事件时,你必须包含这个命名空间。(@fires标签是一个特殊的例外,它可以让你忽略命名空间。)

注意: JSDoc3使用@event doclet来描述事件的内容。与此相反,JSDoc Toolkit 2中使用@event的doclet识别一个函数,当同名事件发生时,这个函数是否会被执行。

示例

下面的示例演示如何记录一个Hurl类中名为snowball事件。该事件包含一个带有单独属性的对象。

示例: 描述一个作为事件的行数
/**
 * Throw a snowball.
 *
 * @fires Hurl#snowball
 */
Hurl.prototype.snowball = function() {
    /**
     * Snowball event.
     *
     * @event Hurl#snowball
     * @type {object}
     * @property {boolean} isPacked - Indicates whether the snowball is tightly packed.
     */
    this.emit('snowball', {
        isPacked: this._snowball.isPacked
    });
};
示例: 使用一个命名doclet来描述一个事件
/**
 * Throw a snowball.
 *
 * @fires Hurl#snowball
 */
Hurl.prototype.snowball = function() {
    // ...
};

/**
 * Snowball event.
 *
 * @event Hurl#snowball
 * @type {object}
 * @property {boolean} isPacked - Indicates whether the snowball is tightly packed.
 */