Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Azure DevOps Services | Azure DevOps Server 2022 - Azure DevOps Server 2019
Usare le estensioni per migliorare Azure DevOps con nuove esperienze Web, widget del dashboard, attività di compilazione e altro ancora. È possibile sviluppare estensioni usando tecnologie standard come HTML, JavaScript e CSS. Questa esercitazione illustra la creazione di un'estensione Web per Azure DevOps.
Consiglio
Esplorare gli esempi di estensione e la documentazione più recente sullo sviluppo di estensioni usando Azure DevOps Extension SDK.
Prerequisiti
Categoria | Requisiti |
---|---|
Autorizzazioni | Proprietario dell'organizzazione. |
Strumenti |
-
Node.js - Strumento di creazione pacchetti di estensioni: eseguire npm install -g tfx-cli da un prompt dei comandi, che verrà usato per creare un pacchetto dell'estensione in un secondo momento. |
Creare una directory e un file manifesto
Un'estensione è costituita da un set di file che include un file manifesto obbligatorio. È possibile crearne il pacchetto in un file con estensione vsix e pubblicarlo in Visual Studio Marketplace.
Creare una directory che contenga i file necessari per l'estensione.
mkdir my-first-extension
Inizializza un nuovo file manifesto del pacchetto npm da questa directory:
npm init -y
Questo file descrive le librerie richieste dall'estensione.
Installare il pacchetto SDK dell'estensione Azure DevOps e salvarlo nel manifesto del pacchetto npm:
npm install azure-devops-extension-sdk --save
Questo SDK include una libreria JavaScript che fornisce le API necessarie per comunicare con la pagina in cui è incorporata l'estensione.
Creare un file manifesto di estensione denominato
vss-extension.json
nella radice della directory dell'estensione con il contenuto seguente:{ "manifestVersion": 1, "id": "my-first-extension", "publisher": "", "version": "1.0.0", "name": "My First Extension", "description": "A sample Visual Studio Services extension", "public": false, "categories": ["Azure Repos"], "targets": [ { "id": "Microsoft.VisualStudio.Services" } ], "contributions": [ { "id": "my-hub", "type": "ms.vss-web.hub", "targets": [ "ms.vss-code-web.code-hub-group" ], "properties": { "name": "My Hub", "uri": "my-hub.html" } } ], "files": [ { "path": "my-hub.html", "addressable": true }, { "path": "node_modules/azure-devops-extension-sdk", "addressable": true, "packagePath": "lib" } ] }
Importante
La proprietà
public
controlla se l'estensione è visibile a tutti gli utenti in Visual Studio Marketplace. Mantenere private le estensioni durante lo sviluppo.Creare un file denominato
my-hub.html
nella radice della directory dell'estensione con il contenuto seguente, che è per la visuale (nota anche come hub) contribuita all'esperienza Web.<!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <script src="https://cdnjs.cloudflare.com/ajax/libs/require.js/2.3.6/require.min.js"></script> <script> window.requirejs.config({ enforceDefine: true, paths: { 'SDK': './lib/SDK.min' } }); window.requirejs(['SDK'], function (SDK) { if (typeof SDK !== 'undefined') { console.log("SDK is defined. Trying to initialize..."); SDK.init(); SDK.ready().then(() => { console.log("SDK is ready"); document.getElementById("name").innerText = SDK.getUser().displayName; }); } else { console.log('SDK is not defined'); } }); </script> <style> body { background-color: rgb(0, 67, 117); color: white; margin: 10px; font-family: "Segoe UI VSS (Regular)","-apple-system",BlinkMacSystemFont,"Segoe UI",sans-serif; } </style> </head> <body> <h1>Hello, <span id="name"></span></h1> </body> </html>
La directory della tua estensione dovrebbe assomigliare al seguente esempio.
|-- my-hub.html |-- node_modules |-- @types |-- azure-devops-extension-sdk |-- package.json |-- vss-extension.json
Hai bisogno di aiuto? Inviare domande alla community degli sviluppatori di Azure DevOps Services.