【问题标题】:Azure DevOps extension custom UIAzure DevOps 扩展自定义 UI
【发布时间】:2018-11-10 15:54:42
【问题描述】:

我的任务是为 Azure DevOps 开发一个扩展来自动化构建过程 - 一个自定义构建任务。需要注意的是,实际上我正在开发的是一系列构建任务,每个任务都包含常规输入。但由于历史原因,所有这些构建任务都应该分组,用户可以从管道设置中任务页面的下拉列表中选择正确的任务。

问题是下拉菜单中的更改应该隐藏一些输入并显示其他一些输入 - 即我想处理下拉菜单的 CHANGE 事件并控制 UI 的可见性元素。

这甚至可能吗?

我是不是走错了路?我该如何处理?

【问题讨论】:

  • 您是否尝试过使用任务组来创建捆绑构建任务。您还可以将选择链接到构建变量?

标签: azure-devops azure-pipelines-build-task


【解决方案1】:

解决方案很简单,但目前还不明显。

每个输入都有一个名为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 输入。 test2o2 也是如此。如果selectedOptiono3,则不会显示test1test2

【讨论】:

  • 我发现我需要将一些控件“组合”在一起,然后才能看到它在“输入”部分之前剪断。 "groups":[ { "name": "SomeGroupName", "displayName" : "Group Title Goes Here", "isExpanded": true } 然后在每个控件中我添加了属性:"groupName": "SomeGroupName"。它终于奏效了!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-08-04
  • 1970-01-01
  • 2020-07-14
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多