Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022
Dans cet exemple, nous ajoutons une action au menu contextuel de requête dans le hub de requêtes d’élément de travail.
Conseil / Astuce
Consultez notre documentation la plus récente sur le développement d’extensions à l’aide du Kit de développement logiciel (SDK) d’extension Azure DevOps.
Prerequisites
Mettre à jour le fichier manifeste d’extension
Voici l’extrait de code qui ajoute votre action à la section contributions de votre manifeste d’extension.
...
"contributions": [
{
"id": "myAction",
"type": "ms.vss-web.action",
"description": "Run in Hello hub action",
"targets": [
"ms.vss-work-web.work-item-query-menu"
],
"properties": {
"text": "Run in Hello hub",
"title": "Run in Hello hub",
"icon": "images/icon.png",
"groupId": "actions",
"uri": "action.html"
}
}
]
...
Propriétés
| Propriété | Descriptif |
|---|---|
| texte | Texte qui apparaît dans l’élément de menu. |
| title | Texte d’info-bulle qui s’affiche sur l’élément de menu. |
| Wi-Fi | URL vers une icône qui apparaît dans l’élément de menu. Les URL relatives sont résolues à l’aide de baseUri. |
| groupId | Détermine l’emplacement où cet élément de menu apparaît par rapport aux autres. |
| URI | URI vers une page qui inscrit le gestionnaire d’actions de menu (voir ci-dessous). |
| registeredObjectId | (Facultatif) Nom du gestionnaire d’actions de menu inscrites. La valeur par défaut est l’ID de contributeur. |
Découvrez tous les endroits où vous pouvez ajouter des actions dans des points d’extensibilité.
Votre page HTML
Votre action de menu est représentée par un script JavaScript incorporé dans un fichier HTML. Enregistrez le contenu suivant dans un fichier et un emplacement qui correspond à la référence à celui-ci dans le fichier manifeste de votre extension.
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Action Sample</title>
</head>
<body>
<div>
The end user doesn't see the content on this page.
It is only in the background to handle the contributed menu item being selected.
</div>
</body>
</html>
Votre code JavaScript
Le script ci-dessous inscrit l’objet gestionnaire pour gérer l’action, placez-le dans la head section de la page HTML précédente.
Nous avons alias
libpour êtrenode_modules/azure-devops-extension-sdk/libdans notresdk-extension.jsonfichier manifeste.
<script src="lib/SDK.min.js"></script>
<script>
SDK.init();
// Use an IIFE to create an object that satisfies the IContributedMenuSource contract
var menuContributionHandler = (function () {
"use strict";
return {
// This is a callback that gets invoked when a user selects the newly contributed menu item
// The actionContext parameter contains context data surrounding the circumstances of this
// action getting invoked.
execute: function (actionContext) {
alert("Hello, world");
}
};
}());
// Associate the menuContributionHandler object with the "myAction" menu contribution from the manifest.
SDK.register(SDK.getContributionId(), menuContributionHandler);
</script>
Conseil / Astuce
Pour plus d’informations, consultez les points d’extensibilité, les menus et les barres d’outils, le modèle contribution du système de conception de formule, la référence de l’API REST, les exemples d’extension et les ressources dans la communauté des développeurs.
Étapes suivantes
Maintenant que vous avez écrit votre extension, les étapes suivantes sont de empaqueter, publier et installer votre extension. Vous pouvez également consulter la documentation relative au test et au débogage de votre extension.