Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Serviços de DevOps do Azure | Azure DevOps Server | Azure DevOps Server 2022
Neste exemplo, adicionamos uma ação ao menu de contexto de consulta no hub de consultas de item de trabalho.
Dica
Para as mais recentes orientações de desenvolvimento de extensões, incluindo tema e migração do VSS. SDK, consulte o portal para programadores do Azure DevOps Extension SDK.
Pré-requisitos
Atualizar o manifesto de extensão
Adicione a sua ação à secção de contribuições do seu manifesto de extensão.
...
"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"
}
}
]
...
Propriedades
| Propriedade | Descrição |
|---|---|
| enviar SMS | Texto que aparece no item de menu. |
| título | Texto de dica de ferramenta que aparece no item de menu. |
| ícone | URL para um ícone que aparece no item de menu. As URLs relativas são resolvidas usando baseUri. |
| ID do grupo | Determina onde este item de menu aparece em relação aos outros. |
| URI | URI para uma página que registra o manipulador de ações de menu (veja abaixo). |
| ID de Objeto Registado | (Opcional) Nome do manipulador de ações de menu registrado. Por padrão, é utilizado o ID do colaborador. |
Saiba mais sobre todos os locais onde você pode adicionar ações em Pontos de extensibilidade.
A sua página HTML
Sua ação de menu é representada por um script JavaScript incorporado em um arquivo HTML. Salve o conteúdo a seguir em um arquivo e local que corresponda à referência a ele no arquivo de manifesto da sua extensão.
<!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>
Dica
Para obter mais informações, consulte Pontos de extensibilidade, menus e barras de ferramentas, o modelo de Contribuição, o Formula Design System, a referência da API REST, Exemplos de extensãoe recursos na Comunidade de Desenvolvedores.
Próximos passos
Empacote, publique e instale a sua extensão.