Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Layanan Azure DevOps
Petunjuk / Saran
Untuk panduan pengembangan ekstensi terbaru, termasuk tema dan migrasi dari VSS. SDK, lihat portal pengembang Azure DevOps Extension SDK.
Dalam artikel ini, Anda membuat hub yang muncul di Azure Boards setelah hub Sprints dan Queries .
Prasyarat
- Node.js
- Alat pengemasan ekstensi: jalankan
npm install -g tfx-cli
Membuat struktur ekstensi
Buat direktori untuk ekstensi Anda dan inisialisasikan:
mkdir my-hub-extension cd my-hub-extension npm init -y npm install azure-devops-extension-sdk --saveDirektori Anda akan terlihat seperti ini:
|--- my-hub-extension |--- node_modules |--- azure-devops-extension-sdk |--- images |--- icon.png |--- hello-world.html |--- package.json |--- vss-extension.json
Membuat halaman hub
Buat hello-world.html di akar direktori ekstensi Anda. Halaman ini memuat SDK, menginisialisasinya, dan menampilkan nama pengguna saat ini.
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>Hello World</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(() => {
document.getElementById("name").innerText = SDK.getUser().displayName;
});
});
</script>
</head>
<body>
<h1>Hello, <span id="name"></span></h1>
</body>
</html>
Untuk daftar lengkap grup hub yang dapat Anda targetkan, lihat Referensi Poin Extensibilitas.
Membuat manifes ekstensi
Buat vss-extension.json di akar direktori ekstensi Anda:
{
"manifestVersion": 1,
"id": "sample-extension",
"version": "0.1.0",
"name": "My first sample extension",
"description": "A sample Azure DevOps extension.",
"publisher": "fabrikamdev",
"public": false,
"categories": ["Azure Boards"],
"targets": [
{
"id": "Microsoft.VisualStudio.Services"
}
],
"icons": {
"default": "images/icon.png"
},
"contributions": [
{
"id": "hello-world-hub",
"type": "ms.vss-web.hub",
"description": "Adds a 'Hello' hub to the Work hub group.",
"targets": [
"ms.vss-work-web.work-hub-group"
],
"properties": {
"name": "Hello",
"order": 99,
"uri": "hello-world.html"
}
}
],
"scopes": [
"vso.work"
],
"files": [
{
"path": "hello-world.html", "addressable": true
},
{
"path": "node_modules/azure-devops-extension-sdk",
"addressable": true,
"packagePath": "lib"
},
{
"path": "images/icon.png", "addressable": true
}
]
}
Penting
Ganti penerbit dengan nama penerbit Anda. Untuk membuat penerbit, lihat Paket , terbitkan, dan instal. Tetap public atur ke false selama pengembangan.
Properti manifes utama
| Harta benda | Deskripsi |
|---|---|
| Kontribusi | Mendeklarasikan hub.
type adalah ms.vss-web.hub, dan targets menentukan grup hub mana yang akan ditambahkan. Lihat Titik ekstensibilitas untuk semua grup hub yang dapat ditargetkan. |
| contributions.properties.name | Nama tampilan hub. |
| kontribusi.properti.urutan | Posisi hub dalam grup hub. |
| contributions.properties.uri | Jalur (relatif terhadap URI dasar ekstensi) dari halaman yang akan dipergunakan sebagai pusat. |
| cakupan | Izin yang diperlukan ekstensi.
vso.work memberikan akses baca ke item kerja. Lihat Cakupan. |
| file | File yang akan disertakan dalam paket. Atur addressable: true untuk file yang memerlukan URL. |
Untuk informasi selengkapnya tentang manifes, lihat Referensi manifes ekstensi.
Tambahkan grup hub kustom
Alih-alih menambahkan hub ke grup hub bawaan, seperti Kerja atau Kode, buat grup hub Anda sendiri dan tambahkan hub ke dalamnya. Tambahkan kontribusi ms.vss-web.hub-group dan kontribusi ms.vss-web.hub yang menargetkannya:
"contributions": [
{
"id": "sample-hub-group",
"type": "ms.vss-web.hub-group",
"description": "Adds a 'Samples' hub group at the project level.",
"targets": [
"ms.vss-web.project-hub-groups-collection"
],
"properties": {
"name": "Samples",
"order": 100
}
},
{
"id": "hello-hub",
"type": "ms.vss-web.hub",
"description": "Adds a 'Hello' hub to the Samples hub group.",
"targets": [
".sample-hub-group"
],
"properties": {
"name": "Hello",
"order": 99,
"uri": "hello-world.html"
}
}
]
Perbedaan utama dari menambahkan hub ke grup bawaan:
- Target
ms.vss-web.project-hub-groups-collectionkontribusi grup hub untuk tingkat proyek ataums.vss-web.collection-hub-groups-collectionuntuk tingkat organisasi. - Array hub
targetsmenggunakan referensi relatif (.sample-hub-group) untuk menunjuk ke grup hub yang ditentukan dalam ekstensi yang sama. - Properti
orderpada grup hub mengontrol di mana grup muncul di navigasi.
Langkah selanjutnya
Konten terkait
- Mengembangkan ekstensi web
- referensi manifes Ekstensi
- SDK Ekstensi Azure DevOps
- Sistem Desain Rumus Azure DevOps