Azure DevOps 扩展自定义 UI
Azure DevOps extension custom UI
我的任务是为 Azure DevOps 开发一个扩展来自动化构建过程——一个自定义构建任务。需要注意的是,实际上我正在开发的是一系列构建任务,每个任务都包含常规输入。但由于历史原因,所有这些构建任务都应该分组,用户可以从管道设置中任务页面的下拉列表中选择正确的任务。
问题是下拉菜单中的更改应该隐藏一些输入并显示一些其他输入 - 即我想处理下拉菜单的 CHANGE 事件并控制可见性UI 个元素。
这可能吗?
我走错路了吗?我该如何处理?
解决方案很简单,但目前还不是很明显。
每个输入都有一个 属性,称为 visibleRule
,它完全满足需要:控制它所附加的输入的可见性。所以在 task.json
文件中,在 inputs
数组中,可以这样做:
定义下拉菜单:
{
"name": "selectedOption",
"type": "pickList",
"label": "Options",
"options": {
"o1": "Option 1",
"o2": "Option 2",
"o3": "Option 3"
}
},
然后像这样定义一些字段:
{
"name": "test1",
"type": "string",
"label": "Option 1 test",
"visibleRule": "selectedOption = o1"
},
{
"name": "test2",
"type": "string",
"label": "Option 2 test",
"visibleRule": "selectedOption = o2"
},
现在,只有在 selectedOption
下拉列表中选择了 o1
(选项 1),才会显示 test1
输入。 test2
和 o2
也是如此。如果 selectedOption
为 o3
,则 test1
和 test2
均不显示。
我的任务是为 Azure DevOps 开发一个扩展来自动化构建过程——一个自定义构建任务。需要注意的是,实际上我正在开发的是一系列构建任务,每个任务都包含常规输入。但由于历史原因,所有这些构建任务都应该分组,用户可以从管道设置中任务页面的下拉列表中选择正确的任务。
问题是下拉菜单中的更改应该隐藏一些输入并显示一些其他输入 - 即我想处理下拉菜单的 CHANGE 事件并控制可见性UI 个元素。
这可能吗?
我走错路了吗?我该如何处理?
解决方案很简单,但目前还不是很明显。
每个输入都有一个 属性,称为 visibleRule
,它完全满足需要:控制它所附加的输入的可见性。所以在 task.json
文件中,在 inputs
数组中,可以这样做:
定义下拉菜单:
{
"name": "selectedOption",
"type": "pickList",
"label": "Options",
"options": {
"o1": "Option 1",
"o2": "Option 2",
"o3": "Option 3"
}
},
然后像这样定义一些字段:
{
"name": "test1",
"type": "string",
"label": "Option 1 test",
"visibleRule": "selectedOption = o1"
},
{
"name": "test2",
"type": "string",
"label": "Option 2 test",
"visibleRule": "selectedOption = o2"
},
现在,只有在 selectedOption
下拉列表中选择了 o1
(选项 1),才会显示 test1
输入。 test2
和 o2
也是如此。如果 selectedOption
为 o3
,则 test1
和 test2
均不显示。