Bearbeiten: Dies ist technisch eine zweiteilige Frage. Ich habe die beste Antwort ausgewählt, die die Frage im Allgemeinen abdeckt, und sie mit der Antwort verknüpft, die die spezifische Frage behandelt.
Was ist der beste Weg, um anonyme Objekte und Funktionen mit jsdoc zu dokumentieren?
/**
* @class {Page} Page Class specification
*/
var Page = function() {
/**
* Get a page from the server
* @param {PageRequest} pageRequest Info on the page you want to request
* @param {function} callback Function executed when page is retrieved
*/
this.getPage = function(pageRequest, callback) {
};
};
Weder das PageRequest
Objekt noch das callback
existieren im Code. Sie werden zur getPage()
Laufzeit zur Verfügung gestellt. Aber ich möchte in der Lage sein zu definieren, was das Objekt und die Funktion sind.
Ich kann mit dem Erstellen des PageRequest
Objekts davonkommen, um Folgendes zu dokumentieren:
/**
* @namespace {PageRequest} Object specification
* @property {String} pageId ID of the page you want.
* @property {String} pageName Name of the page you want.
*/
var PageRequest = {
pageId : null,
pageName : null
};
Und das ist in Ordnung (obwohl ich offen bin für bessere Möglichkeiten, dies zu tun).
Wie kann die callback
Funktion am besten dokumentiert werden? Ich möchte im Dokument darauf hinweisen, dass die Rückruffunktion beispielsweise folgende Form hat:
callback: function({PageResponse} pageResponse, {PageRequestStatus} pageRequestStatus)
Irgendwelche Ideen, wie das geht?