Přidejte akci nabídky

Azure DevOps Services | Azure DevOps Server | Azure DevOps Server 2022

V tomto příkladu přidáme akci do místní nabídky dotazu v uzlu dotazů pracovních položek.

Spropitné

Nejnovější pokyny k vývoji rozšíření, včetně motivů a migrace z VSS.SDK, najdete na portálu pro vývojáře sady Azure DevOps Extension SDK.

Požadavky

Aktualizace manifestu rozšíření

Přidejte akci do oddílu příspěvků manifestu rozšíření.

...
    "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"
            }
        }
    ]
...

Vlastnosti

Vlastnost Popis
poslat SMS Text zobrazovaný v položce nabídky
titul Text popisu, který se zobrazí na položce nabídky
ikona URL ikony, která se zobrazí v položce nabídky. Relativní adresy URL se řeší pomocí baseUri.
ID skupiny Určuje, kde se tato položka nabídky zobrazuje ve vztahu k ostatním.
uri URI stránky, která registruje zpracovatele akcí nabídky (viz níže).
registrovanýObjektID (Volitelně) Název zpracovatele akcí registrované nabídky Výchozí hodnota je ID přispěvatele.

Přečtěte si o všech místech, kde můžete přidávat akce v bodech rozšiřitelnosti .

Vaše stránka HTML

Akce nabídky je reprezentována javascriptovým skriptem vloženým do souboru HTML. Uložte následující obsah do souboru a umístění, které odpovídá odkazu na něj v souboru manifestu vaší přípony.

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Action Sample</title>
    <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) {
            SDK.init();
            SDK.ready().then(() => {
                // Register the menu action handler
                SDK.register(SDK.getContributionId(), {
                    execute: function (actionContext) {
                        alert("Hello, world");
                    }
                });
            });
        });
    </script>
</head>
<body>
    <div>
        The end user doesn't see the content on this page.
        It runs in the background to handle the contributed menu item being selected.
    </div>
</body>
</html>

Spropitné

Další informace najdete v tématu body rozšiřitelnosti , nabídky a panely nástrojů, model přispívání , systému návrhu vzorců , referenčního rozhraní REST API , ukázky rozšíření a zdroje v komunitě vývojářů .

Další krok

Zabalte, publikujte a nainstalujte rozšíření.