JSDoc ist eine Auszeichnungssprache zum Hinzufügen von Inline-API-Dokumentation zum JavaScript-Quellcode. Dies unterscheidet sich von den verschiedenen Tools, die Code analysieren und bearbeiten, der der JSDoc-Syntax folgt.
// My function does X and Y. // @params {object} parameters An object containing the parameters // @params {function} callback The callback function function(parameters, callback) { } Aber wie beschreibe ich, wie das Parameterobjekt strukturiert sein soll? Zum Beispiel sollte es so etwas sein wie: { setting1 : 123, // …
Wie kann ich JSDoc über die Struktur eines zurückgegebenen Objekts informieren? Ich habe die @return {{field1: type, field2: type, ...}} descriptionSyntax gefunden und ausprobiert: /** * Returns a coordinate from a given mouse or touch event * @param {TouchEvent|MouseEvent|jQuery.Event} e * A valid mouse or touch event or a jQuery …
Laut dem JSDoc-Wiki für @param können Sie angeben, dass ein @param optional ist /** @param {String} [name] */ function getPerson(name) { } und Sie können einen Parameter inline mit angeben function getPerson(/**String*/ name) { } Und ich kann sie wie folgt kombinieren, was in Ordnung funktioniert. /** @param [name] */ …
In JSDoc zeigt die beste Dokumentation, die ich finden kann, Folgendes, wenn Sie ein Array eines bestimmten Typs (z. B. ein Array von Zeichenfolgen) haben: /** * @param {Array.<string>} myStrings All my awesome strings */ function blah(myStrings){ //stuff here... } Wie würden Sie die folgenden Fragezeichen ersetzen, um ein Array …
Ich habe eine Funktion, die einen String-Parameter akzeptiert. Dieser Parameter kann nur einen von wenigen definierten möglichen Werten haben. Was ist der beste Weg, um dasselbe zu dokumentieren? Sollte shapeType als enum oder TypeDef oder etwas anderes definiert werden? Shape.prototype.create = function (shapeType) { // shapeType can be "rect", "circle" …
Bisher habe ich meine Objektparameter immer wie folgt dokumentiert: /** * Description of the function * * @param {Object} config - The configuration * @param {String} config.foo * @param {Boolean} [config.bar] - Optional value * @return {String} */ function doSomething (config = {}) { const { foo, bar } = …
Ich habe einen Code, der ein Versprechungsobjekt zurückgibt, z. B. die Q- Bibliothek für NodeJS. var Q = require('q'); /** * @returns ??? */ function task(err) { return err? Q.reject(new Error('Some error')) : Q.resolve('Some result'); } Wie dokumentiere ich einen solchen Rückgabewert mit JSDoc?
Angenommen, Sie haben etwa Folgendes: var someFunc = function() { // do something here with arguments } Wie würden Sie korrekt dokumentieren, dass diese Funktion eine beliebige Anzahl von Argumenten in JSDoc annehmen kann? Dies ist meine beste Vermutung, aber ich bin nicht sicher, ob es richtig ist. /** * …
Gibt es eine bestimmte Möglichkeit, eine Methode oder eine Funktion zu deklarieren, um in JsDoc void zurückzugeben? Derzeit bin ich der Überzeugung, dass dies voidder Standardrückgabewert ist, und andere Rückgabewerte müssen speziell angegeben werden: /** * @return {Integer} The identifier for ... */
Mit dem nächsten Beispiel: var CONF = { locale: { "en": { name: "English", lang: "en-US" }, "es": { name: "Spanish", lang: "es-ES" } } }; Und wenn ich weiß, dass die Eigenschaft locale ein Wörterbuchobjekt enthält, das aus der Datenbank stammt, wie kann ich seine inneren Eigenschaften mit JSDoc …
Ich habe eine ganze Weile im Internet nach dem besten Weg gesucht, Rückrufe mit jsdoc richtig zu dokumentieren, aber leider habe ich noch keinen großartigen gefunden. Hier ist meine Frage: Ich schreibe eine Node.js-Bibliothek für Entwickler. Diese Bibliothek bietet mehrere Klassen, Funktionen und Methoden, mit denen Entwickler arbeiten werden. Um …
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 …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.