擴充程式選項是由擴充程式開發人員定義,供擴充程式使用者使用的功能配置項,可實現該擴充程式選項在不同工作空間進行個人化管控。例如,擴充程式開發人員可以通過選項配置讓擴充程式使用者自行管控SQL長度,實現擴充程式在不同工作空間限制的SQL長度不同。
背景資訊
擴充程式選項由擴充程式開發人員在註冊擴充程式時定義的該選項,供擴充程式使用者在具體工作空間下對該擴充程式選項進行設定。
擴充程式開發人員註冊擴充程式,詳情請參見:準備工作2:註冊擴充程式。
擴充程式使用者在空間內使用擴充程式時,可在啟用擴充程式前在下圖位置配置選項。
擴充程式開發人員可通過APIGetOptionValueForProject擷取擴充程式使用者(空間管理員)在具體工作空間內該選項的配置。
注意事項
擴充程式選項配置資訊及相關文案由擴充程式開發人員提供,平台不為內容風險負責。
支援的組件
目前選項配置支援的組件有七種:文本、單行輸入框、多行輸入框、單選選擇下拉、多選選擇下拉、複選和單選組件。如下圖所示:
選項配置
擴充程式開發人員需要在註冊擴充程式時,通過JSON字串方式在選項配置中定義選項。
{
"type": "object",
"properties": {
"組件名稱(不可重複)": {
"type": "string",
"title": "填寫見下表",
"x-decorator": "填寫見《參數解析》表格內容",
"x-component": "填寫見《參數解析》表格內容",
"x-decorator-props": {
"tooltip": "描述"
},
"x-component-props": {
"dataSource": "填寫見《參數解析》表格內容",
"mode": "multiple"
}
}
}
}
您可以參考以下內容進行配置:
組件相關參數解析,詳情請參見:參數解析。
組件配置樣本,詳情請參見:配置樣本:設定SQL任務消耗的CU資源閾值、配置樣本:使用7類組件。
註冊與管理擴充程式,詳情請參見:準備工作2:註冊擴充程式。
參數解析
欄位 | 組件類型 | 值 |
title | 文本 | 文本 |
單行輸入框 | 單行輸入框 | |
多行輸入框 | 多行輸入框 | |
單選選擇下拉 | 單選選擇下拉 | |
多選選擇下拉 | 多選選擇下拉 | |
複選 | 複選 | |
單選 | 單選 | |
x-decorator | 文本 | FormItem |
單行輸入框 | FormItem | |
多行輸入框 | FormItem | |
單選選擇下拉 | FormItem | |
多選選擇下拉 | FormItem | |
複選 | FormItem | |
單選 | FormItem | |
x-component | 文本 | PreviewText.Input |
單行輸入框 | Input | |
多行輸入框 | Input.TextArea | |
單選選擇下拉 | Select | |
多選選擇下拉 | Select | |
複選 | Checkbox.Group | |
單選 | Radio.Group | |
dataSource | 文本 | 可不填 |
單行輸入框 | 可不填 | |
多行輸入框 | 可不填 | |
單選選擇下拉 | 如有需要可填寫:(其中每一對大括弧都是唯一的,value和label不可重複。label對應的值為展示到介面的文案,value的值是文案對應的標記,自行定義即可。以下為範例程式碼:
| |
多選選擇下拉 | 如有需要可填寫:(其中每一對大括弧都是唯一的,value和label不可重複。label的值是展示到介面的文案,value的值是文案對應的標記,自行定義即可。以下為範例程式碼:
| |
複選 | 如有需要可填寫:(其中每一對大括弧都是唯一的,value和label不可重複。label的值是展示到介面的文案,value的值是文案對應的標記,自行定義即可。以下為範例程式碼:
| |
單選 | 如有需要可填寫:(其中每一對大括弧都是唯一的,value和label不可重複。label的值是展示到介面的文案,value的值是文案對應的標記,自行定義即可。以下為範例程式碼:
|
配置樣本:設定SQL任務消耗的CU資源閾值
下圖為設定SQL任務消耗的CU資源閾值配置過程與最終效果樣本。
上述選項配置中的JSON配置如下。
{
"type": "object",
"properties": {
"cuNumber": {
"type": "string",
"title": "Cu數閾值",
"x-decorator": "FormItem",
"x-component": "Input",
"x-decorator-props": {
"tooltip": "請輸入SQL任務的消耗CU數閾值"
}
}
}
}
配置樣本:使用7類組件
下圖為使用7類組件的配置過程與效果樣本。
上述選項配置中的JSON配置如下。
如果您需要一次性使用七個組件,可複製以下JSON並修改部分資料即可。
{
"type":"object",
"properties":{
"text":{
"type":"string",
"title":"文本",
"x-decorator":"FormItem",
"x-component":"PreviewText.Input",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"default":"這是文本資訊"
},
"input":{
"type":"string",
"title":"單行輸入框",
"x-decorator":"FormItem",
"x-component":"Input",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
},
"default":"這是預設值"
},
"textarea":{
"type":"string",
"title":"多行輸入框",
"x-decorator":"FormItem",
"x-component":"Input.TextArea",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
},
"default":"這是預設值"
},
"select":{
"type":"string",
"title":"單選選擇下拉",
"x-decorator":"FormItem",
"x-component":"Select",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":10002,
"label":"opt2"
},
{
"value":10003,
"label":"opt3",
"disabled":true
}
]
},
"default":"10001"
},
"selectmore":{
"type":"string",
"title":"多選選擇下拉",
"x-decorator":"FormItem",
"x-component":"Select",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":10002,
"label":"opt2"
},
{
"value":10003,
"label":"opt3",
"disabled":true
}
],
"mode":"multiple"
},
"default":["10001","10002"]
},
"checkbox":{
"type":"array",
"title":"複選",
"x-decorator":"FormItem",
"x-component":"Checkbox.Group",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":10002,
"label":"opt2"
},
{
"value":10003,
"label":"opt3",
"disabled":true
}
],
"mode":"multiple"
},
"default":["10001","10002"]
},
"radio":{
"type":"number",
"title":"單選",
"x-decorator":"FormItem",
"x-component":"Radio.Group",
"x-decorator-props":{
"tooltip":"描述檔案"
},
"x-component-props":{
"dataSource":[
{
"value":"10001",
"label":"opt1"
},
{
"value":10002,
"label":"opt2"
},
{
"value":10003,
"label":"opt3",
"disabled":true
}
],
"mode":"multiple"
},
"default":"10001"
}
}
}