Durchsuchbare Dokumentation aufrufen | Zurück zur Dokumentationsübersicht
Navigation: Dokumentationen agorum core > agorum core JavaScript-API
Der Monaco-Editor ist integraler Bestandteil von agorum core und bietet Entwicklern eine leistungsfähige Umgebung zur Bearbeitung und Verwaltung des JavaScript-Codes für Eigenentwicklungen und Anpassungen der Standardfunktionalität. Einige Funktionen des Monaco-Editors sind:
JSDoc ist ein Dokumentationswerkzeug, das speziell für JavaScript entwickelt wurde, um den Code mit Kommentaren zu versehen, die sowohl für Entwickler als auch für automatische Dokumentationstools nützlich sind. Es hilft, den Code besser lesbar und verständlicher zu machen, indem es ermöglicht, Funktionen, Parameter, Rückgabewerte und andere Elemente des Codes detailliert zu beschreiben. Der Monaco-Editor unterstützt JSDoc und kann daher auch Unterstützung für die agorum-Funktionen sowie Ihre eigenen Code-Erweiterungen anbieten.
Hinweis: Beachten Sie, dass Sie JSDoc nur im Monaco-Editor verwenden können und nicht in den älteren Entwicklungsoberflächen, etwa Support Tool oder smart assistant konfigurator. In den älteren Entwicklungsoberflächen wird der Editor CodeMirror verwendet.
Wenn Sie agorum core um Funktionalität erweitern, die Sie auch anderen Entwicklern zur Verfügung stellen wollen, ergänzen Sie daher JSDoc-Kommentare in Ihrem Code. Allgemeine Hinweise zu JSDoc finden Sie unter jsdoc.app.
In den folgenden Abschnitten finden Sie einige grundlegende Hinweise zum Monaco-Editor und zur Verwendung von JSDoc.
Der Monaco-Editor bietet einige Funktionen, die bei der Entwicklung sehr hilfreich sein können. Diese werden im Folgenden kurz erläutert.
Klicken Sie etwa auf den Namen einer Funktion oder Variablen, öffnen sich über ein Kontextmenü diverse Aktionen.
Aktion | Beschreibung | Tastaturkürzel |
---|---|---|
Go to Definition | Springt zur Stelle im Code, in der die Funktion oder Variable definiert ist. | STRG + F12 STRG + Linksklick |
Go to References | Listet alle vorhandenen Stellen im Code auf, in denen die Funktion oder Variable verwendet wird, und springt an die entsprechende Stelle. | SHIFT + F12 |
Go to Symbol | Listet alle verfügbaren Variablen, Funktionen und sonstigen Symbole im Code auf und springt an die entsprechende Stelle. | STRG + SHIFT + O |
Peek > Peek Definition | Zeigt die Stelle, in der die Variable oder Funktion definiert wurde, in einer Vorschau an. Diese Aktion zeigt auch externe Dateien an, d. h. die Definition muss nicht in der gleichen Datei durchgeführt worden sein, in der die Variable oder Funktion verwendet wird. |
ALT + F12 |
Peek > Peek References | Zeigt die Stellen, in der die Variable oder Funktion verwendet wird, in einer Vorschau an. Diese Aktion zeigt auch externe Dateien an, d. h. Dateien, in denen die Variable oder Funktion ebenfalls verwendet wird. |
|
Rename Symbol | Benennt alle Stellen, in denen die Funktion oder die Variable im Code vorkommt, gleichzeitig um. | F2 |
Change All Occurrences | Ermöglicht es, alle Stellen, in denen die Funktion oder die Variable im Code vorkommt, gleichzeitig zu ändern. | STRG + F2 |
Format Document | Formatiert den gesamten Code automatisch einheitlich. | SHIFT + ALT + F |
Format Selection | Formatiert den Code-Abschnitt, in dem Sie sich gerade befinden, automatisch einheitlich. | STRG + K STRG + F |
Cut | Schneidet markierten Code aus. | |
Copy | Kopiert markierten Code. | |
Command Palette | Öffnet eine integrierte Hilfe. | F1 |
Außerdem können Sie folgende Tastaturkürzel verwenden:
Tastaturkürzel | Beschreibung |
---|---|
STRG + ALT + Pfeiltaste hoch/runter | Lässt einen weiteren Cursor ober- oder unterhalb der aktuellen Zeile erscheinen. Wenn Sie nach dem Erscheinen des Cursors tippen, können Sie in mehrere Zeilen schreiben, um etwa in mehreren Zeilen die Formatierung zu ändern, wenn Copy-and-paste nicht funktioniert, weil etwa Variablen anders lauten. |
SHIFT + ALT + Pfeiltaste hoch/runter | Kopiert eine oder mehrere Codezeilen. |
ALT + Pfeiltaste hoch/runter | Verschiebt eine oder mehrere Codezeilen. Verwenden Sie das Verschieben, nachdem Sie Codezeilen mit SHIFT + ALT + Pfeiltaste hoch/runter kopiert haben, um Codezeilen zu duplizieren, an eine gewünschte Stelle zu verschieben und dann zu ändern. |
STRG + G | Öffnet eine Liste, in der Sie die Nummer einer Codezeile eingeben können, und springt zu der eingegebenen Zeile. |
STRG + U | Springt bei jedem Ausführen von STRG + U in die Cursorposition zurück, die zuvor aufgerufen wurde. |
JSDoc-Kommentare beginnen mit /**
und enden mit */
. Innerhalb dieser Kommentare werden verschiedene Tags verwendet, die mit einem @
beginnen, um die Struktur und Bedeutung des Codes zu beschreiben.
/** * Addiert zwei Zahlen. * * @param {number} a - Die erste Zahl. * @param {number} b - Die zweite Zahl. * @returns {number} Die Summe der beiden Zahlen. */ function add(a, b) { return a + b; }
Die folgenden Tags werden häufig in JSDoc-Kommentaren verwendet:
Tag | Beschreibung |
---|---|
@param {Typ} Name Beschreibung |
Beschreibt die Parameter einer Funktion mit Typ, Name und einer optionalen Beschreibung. /** * Addiert zwei Zahlen. * * @param {number} a - Die erste Zahl. * @param {number} b - Die zweite Zahl. * @return {number} Die Summe der beiden Zahlen. */ function add(a, b) { return a + b; }
Anzeige der @param-Dokumentation
|
@return {Typ} Beschreibung |
Das @return -Tag (oder @returns ) beschreibt den Rückgabewert einer Funktion. /** * Gibt einen Willkommensgruß zurück. * * @return {string} Eine Willkommensnachricht. */ function welcome() { return 'Willkommen!'; }
Anzeige der @return-Dokumentation
|
@typedef {Typ} Name und @property {Typ} Name Beschreibung |
Das @typedef -Tag wird verwendet, um benutzerdefinierte Typen zu definieren, die in der gesamten Dokumentation genutzt werden können. Das @property -Tag beschreibt die Eigenschaften eines Objekts. /** * Ein Auto. * * @typedef {Object} Car * @property {string} make - Der Hersteller des Autos. * @property {string} model - Das Modell des Autos. * @property {number} year - Das Baujahr des Autos. */ /** * Gibt eine Beschreibung eines Autos zurück. * * @param {Car} car - Das Auto, das beschrieben werden soll. * @return {string} Eine Beschreibung des Autos. */ function describeCar(car) { return 'Das Auto ist ein ' + car.year + ' ' + car.make + ' ' + car.model + '.'; }
Anzeige der @property-Dokumentation
|
@todo Beschreibung |
Das @todo -Tag wird verwendet, um ausstehende Arbeiten oder Ideen für zukünftige Implementierungen zu vermerken. /** * Berechnet den Umfang eines Rechtecks. * * @param {number} width - Die Breite des Rechtecks. * @param {number} height - Die Höhe des Rechtecks. * @return {number} Der Umfang des Rechtecks. * @todo Funktion auf andere Formen erweitern. */ function calculatePerimeter(width, height) { return 2 * (width + height); }
Anzeige der @todo-Dokumentation
|
@throws {Error} Beschreibung |
Dokumentiert, welche Fehler eine Funktion werfen kann. /** * Teilt zwei Zahlen. * * @param {number} a - Der Dividend. * @param {number} b - Der Divisor. * @throws {Error} Wenn der Divisor null ist. * @return {number} Das Ergebnis der Division. */ function divide(a, b) { if (b === 0) { throw new Error('Division durch null ist nicht erlaubt.'); } return a / b; }
Anzeige der @throws-Dokumentation
|
@example Beschreibung |
Das @example -Tag bietet Beispielcode zur Veranschaulichung der Verwendung einer Funktion oder Methode. /** * Multipliziert zwei Zahlen. * * @param {number} a - Der erste Faktor. * @param {number} b - Der zweite Faktor. * @return {number} Das Produkt der beiden Zahlen. * @example * var result = multiply(2, 3); * // Ergebnis: 6 */ function multiply(a, b) { return a * b; }
Anzeige der @example-Dokumentation
|
@deprecated Beschreibung und @see Beschreibung |
Das @deprecated -Tag zeigt an, dass eine Funktion oder Methode veraltet ist und in der Zukunft entfernt wird. Das @see -Tag wird verwendet, um auf andere relevante Ressourcen oder Dokumentationen zu verweisen. /** * Berechnet den Flächeninhalt eines Rechtecks. * * @deprecated Seit Version 2.0.0. Verwenden Sie stattdessen die Funktion `calculateArea`. * @param {number} width - Die Breite des Rechtecks. * @param {number} height - Die Höhe des Rechtecks. * @return {number} Der Flächeninhalt des Rechtecks. * @see calculateArea */ function getArea(width, height) { return width * height; } /** * Berechnet den Flächeninhalt einer Form mit der angegebenen Breite und Höhe. * * @param {number} width - Die Breite der Form. * @param {number} height - Die Höhe der Form. * @return {number} Der Flächeninhalt der Form. */ function calculateArea(width, height) { return width * height; } // Beispielhafte Nutzung var area = calculateArea(5, 10); console.log('Der Flächeninhalt ist:', area); // Ausgabe: Der Flächeninhalt ist: 50
Anzeige der @deprecated-Dokumentation
|
JSDoc unterstützt neben den Standard-Datentypen auch die agorum-spezifischen Datentypen. Im Folgenden finden Sie eine Übersicht über die wichtigsten Standard-Datentypen und agorum core-Typen.
Primitive Datentypen:
@type {number}
: Eine Zahl, entweder Ganzzahl oder Gleitkommazahl.@type {string}
: Eine Zeichenkette.@type {boolean}
: Ein Boolescher Wert (true
oder false
).@type {null}
: Der spezielle Typ null
.@type {undefined}
: Wenn der Wert undefined
ist.Objekte und Arrays:
@type {Object}
: Ein allgemeines Objekt.@type {Array<number>}
: Ein Array von Zahlen.@type {Array<string>}
: Ein Array von Zeichenketten.Sonstige Typen:
@type {Function}
: Eine Funktion.@type {Array}
: Ein allgemeines Array.@type {?Type}
: Ein Typ, der null
oder des angegebenen Typs sein kann (Nullable Type).@type {!Type}
: Ein Typ, der nicht null
sein darf (Non-nullable Type).agorum core-Typen:
@type {agorum.FileObject}
: Ein Dokument-Objekt.@type {agorum.FolderObject}
: Ein Ordner-Objekt.@type {agorum.MailObject}
: Ein Mail-Objekt.@type {agorum.Object}
: Ein agorum-Objekt.@type {agorum.SessionController}
: Ein SessionController-Objekt.@type {agorum.UserObject}
: Ein Benutzer-Objekt.
Sie könen einen agorum core-Typ aus einer LIste aller verfügbaren Typen auswählen, indem Sie anstelle des Datentyps den Namespace agorum. eingeben und auf die Autovervollständigung warten.