@constructor

Matt Flaschen edited this page May 6, 2014 · 3 revisions

Synopsis:

@constructor
Documentation for constructor.

Allows documenting the constructor within class documentation.

This tag is provided for backwards compatibility with old ext-doc. Don't use it for new code. Instead document a method named constructor (see below).

Example:

/**
 * @class Ext.Panel
 * The one-and-only panel class.
 *
 * @constructor
 * Creates a new Panel instance.
 * @param {Object} [config] Configuration.
 */

JSDuck will treat everything following @constructor as being part of a constructor method. The above is equivalent of documenting a method named constructor inside the class:

/**
 * The one-and-only panel class.
 */
Ext.define("Ext.Panel", {
    /**
     * Creates a new Panel instance.
     * @param {Object} [config] Configuration.
     */
    constructor: function() {
    }
});

This is the recommended way of documenting the constructor.

If you are using standard constructor functions, rather than Ext.define, you can do this with @method constructor. For example:

/**
 * @class myNamespace.Person
 *
 * @private
 *
 * A person
 */

/**
 * @method constructor
 *
 * @private
 *
 * This uses `foo` to construct a Person.
 */
function Person ( foo ) {
  // Constructor code
}
You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.