Freigeben über


Verwenden von JavaScript IntelliSense in Visual Studio

Wenn Sie Visual Studio 2019 und höher verwenden, um Office-Add-Ins zu entwickeln, können Sie JSDoc verwenden, um IntelliSense für Ihre JavaScript-Variablen, -Objekte, -Parameter und -Rückgabewerte zu aktivieren. Dieser Artikel enthält eine Übersicht über JSDoc und wie Sie dies zum Erstellen von IntellSense in Visual Studio verwenden können. Weitere Informationen hierzu finden Sie unter JavaScript IntelliSense und JSDoc-Unterstützung in JavaScript.

Office.js-Typdefinitionen

Sie müssen die Definition der Typen in Office.js für Visual Studio bereitstellen. Hierfür können Sie folgendermaßen vorgehen:

  • Speichern Sie eine lokale Kopie der Office.js-Dateien ein einem Projektmappenordner mit der Bezeichnung \Office\1\. Die Office-Add-In Projektvorlagen in Visual Studio fügen diese lokale Kopie hinzu, wenn Sie ein Add-In-Projekt erstellen.

  • Verwenden Sie eine Onlineversion von „Office.js“ durch Hinzufügen einer „tsconfig.json“-Datei im Stammordner des Webanwendungsprojekts in Add-In-Projektmappe. Die Datei sollte den folgenden Inhalt haben:

        {
            "compilerOptions": {
                "allowJs": true,            // These settings apply to JavaScript files also.
                "noEmit":  true             // Do not compile the JS (or TS) files in this project.
            },
            "exclude": [
                "node_modules",             // Don't include any JavaScript found under "node_modules".
                "Scripts/Office/1"          // Suppress loading all the JavaScript files from the Office NuGet package.
            ],
            "typeAcquisition": {
                "enable": true,             // Enable automatic fetching of type definitions for detected JavaScript libraries.
                "include": [ "office-js" ]  // Ensure that the "Office-js" type definition is fetched.
            }
        }
    

JSDoc-Syntax

Die grundlegende Methode besteht darin, vor der Variablen (oder dem Parameter etc.) einen Kommentar anzufügen, der den Datentyp angibt. Dadurch kann IntelliSense in Visual Studio seine Mitglieder ableiten. Es folgen einige Beispiele.

Variable

/** @type {Excel.Range} */
let subsetRange;

Auszug aus IntelliSense für subsetRange-Variable.

Parameter

/** @param {Word.ParagraphCollection} paragraphs */
function myFunc(paragraphs){

}

Auszug des IntelliSense-Parameters für paras (Paragraphs-Parameter im JavaScript-Beispiel).

Rückgabewert

/** @returns {Word.Range} */
function myFunc() {

}

Auszug des Rückgabewerts von IntelliSense für myFunc().

Komplexe Typen

/** @typedef {{range: Word.Range, paragraphs: Word.ParagraphCollection}} MyType

/** @returns {MyType} */
function myFunc() {

}

IntelliSense für komplexe Typdeklaration von let myVar; Zum Beispiel.

Weitere Artikel