Skip to content

Instantly share code, notes, and snippets.

@cschuff
Last active October 9, 2022 13:55
Show Gist options
  • Save cschuff/ba104211e5152f7b222da30ea56e75ea to your computer and use it in GitHub Desktop.
Save cschuff/ba104211e5152f7b222da30ea56e75ea to your computer and use it in GitHub Desktop.
How to document a SAPUI5 class with regular JSDoc
/**
* @namespace
* @name ui5experts.toolbox
* @public
*/
sap.ui.define([
"sap/ui/base/ManagedObject"
], function (
ManagedObject) {
"use strict";
/**
* @class
* @abstract
* @extends sap.ui.core.base.ManagedObject
* @constructor
*
* @fires ui5experts.toolbox#demoEvent
*
* @public
* @name ui5experts.toolbox.JSDocDemo
*/
var JSDocDemo = ManagedObject.extend("ui5experts.toolbox.JSDocDemo", {
metadata: {
properties: {},
aggregations: {},
associations: {},
events: {
/**
* This is a demo event to demonstrate JSDoc documentation of SAPUI5 events
*
* @event ui5experts.toolbox#demoEvent
* @type {sap.ui.base.Event}
* @property {ui5experts.toolbox.JSDocDemo} oSource - the event emitter
* @property {object} mParameters SAPUI5 event parameters that can be accessed via oEv.getParameters();
* resp. oEv.getParameter("demoParam");
* @property {boolean} mParameters.demoParam a boolean parameter
* @property {object} mParameters.demoObject an object parameter
* @property {string} mParameters.demoObject.demo a string parameter on the demoObject
*/
demoEvent: {
parameters: {
demoParam: "boolean",
demoObject: "object"
}
}
}
},
constructor: function (sId, mSettings) {
ManagedObject.apply(this, arguments);
},
renderer: null
});
return JSDocDemo;
});
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment