king-design-analyzer 2.1.7 → 2.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/actions.json +101 -0
- package/components/advancedset.json +127 -0
- package/components/affix.json +7 -0
- package/components/aksk.json +172 -0
- package/components/az.json +15 -2
- package/components/badge.json +7 -0
- package/components/billtypes.json +14 -2
- package/components/breadcrumb.json +7 -0
- package/components/button.json +191 -0
- package/components/buttonlink.json +73 -0
- package/components/card.json +8 -1
- package/components/cardcol.json +142 -0
- package/components/cardcols.json +121 -0
- package/components/cardcontent.json +15 -3
- package/components/cardtabs.json +172 -0
- package/components/carousel.json +7 -0
- package/components/cascader.json +520 -368
- package/components/checkbox.json +51 -4
- package/components/cidrinput.json +140 -0
- package/components/code.json +8 -1
- package/components/collapse.json +7 -0
- package/components/colorpicker.json +217 -0
- package/components/copy.json +7 -0
- package/components/copyhover.json +111 -0
- package/components/copyrow.json +124 -0
- package/components/datepicker.json +656 -524
- package/components/description.json +98 -0
- package/components/dialog.json +522 -455
- package/components/divider.json +8 -1
- package/components/drawer.json +571 -558
- package/components/dropdown.json +464 -384
- package/components/duration.json +125 -0
- package/components/editable.json +66 -0
- package/components/ellipsis.json +34 -1
- package/components/filtertablefieldsdialog.json +128 -0
- package/components/flex.json +151 -0
- package/components/form.json +131 -0
- package/components/formiteminput.json +214 -0
- package/components/formitemspinner.json +213 -0
- package/components/formitemswitch.json +185 -0
- package/components/formitemtableconfigs.json +210 -0
- package/components/grid.json +7 -0
- package/components/header.json +161 -0
- package/components/icon.json +13 -1
- package/components/icontooltip.json +19 -1
- package/components/input.json +188 -4
- package/components/instancelist.json +194 -0
- package/components/instancenum.json +196 -0
- package/components/ipinput.json +117 -0
- package/components/kspstatus.json +205 -0
- package/components/kvcode.json +120 -0
- package/components/layoutcontent.json +15 -3
- package/components/layoutlistcontent.json +148 -0
- package/components/layoutpermissioncontent.json +155 -0
- package/components/layoutstandardlist.json +275 -0
- package/components/layouttabs.json +168 -0
- package/components/lazymount.json +86 -0
- package/components/lazyteleport.json +118 -0
- package/components/menu.json +7 -0
- package/components/pagination.json +12 -0
- package/components/paginationplus.json +30 -3
- package/components/password.json +121 -0
- package/components/popover.json +457 -437
- package/components/projects.json +129 -0
- package/components/protable.json +97 -8
- package/components/queuevisualrange.json +110 -0
- package/components/radio.json +82 -2
- package/components/rate.json +199 -0
- package/components/region.json +14 -2
- package/components/search.json +221 -0
- package/components/searchinput.json +132 -0
- package/components/searchitems.json +215 -0
- package/components/searchselect.json +195 -0
- package/components/select.json +686 -666
- package/components/sidebar.json +198 -0
- package/components/skeleton.json +233 -0
- package/components/spin.json +8 -1
- package/components/split.json +260 -0
- package/components/sshkeys.json +138 -0
- package/components/status.json +60 -3
- package/components/steps.json +7 -0
- package/components/switch.json +8 -1
- package/components/table.json +18 -1
- package/components/tablecolumnid.json +14 -2
- package/components/tabs.json +12 -0
- package/components/timeline.json +213 -0
- package/components/timepicker.json +147 -3
- package/components/timerange.json +262 -0
- package/components/tip.json +7 -0
- package/components/tooltip.json +484 -395
- package/components/tour.json +418 -372
- package/components/transfer.json +27 -3
- package/components/tree.json +6 -4
- package/components/treeselect.json +556 -475
- package/components/upload.json +474 -473
- package/components/vdialog.json +308 -0
- package/components/vdrawer.json +331 -0
- package/components/virtuallist.json +7 -0
- package/dist/ast/index.d.mts +35 -1
- package/dist/ast/index.d.ts +35 -1
- package/dist/ast/index.js +5 -3
- package/dist/ast/index.mjs +3 -1
- package/dist/{chunk-DSWKLUIX.mjs → chunk-3LYQ5XFM.mjs} +1 -1
- package/dist/chunk-BI5TIQID.mjs +330 -0
- package/dist/{chunk-6QS5IGS6.js → chunk-CJGGFVQJ.js} +8 -8
- package/dist/chunk-CR3GC4H3.js +353 -0
- package/dist/{chunk-NZ6TLWMD.mjs → chunk-D2SXGGTX.mjs} +28 -17
- package/dist/{chunk-D3Y6FGWA.js → chunk-EYKZY2F3.js} +29 -18
- package/dist/chunk-JSBRDJBE.js +30 -0
- package/dist/chunk-KF5YBEM5.js +143 -0
- package/dist/chunk-KMIDURUR.mjs +33324 -0
- package/dist/chunk-QC6VTSA3.mjs +117 -0
- package/dist/chunk-SZYVGYKK.js +33350 -0
- package/dist/{chunk-WYSRJVX4.js → chunk-TA3SV4SP.js} +2 -2
- package/dist/chunk-UJCSKKID.mjs +27 -0
- package/dist/{chunk-FVSQ6BU6.mjs → chunk-XGPHQHLR.mjs} +4 -4
- package/dist/docs/index.js +1 -1
- package/dist/docs/index.mjs +1 -1
- package/dist/full/index.js +8 -6
- package/dist/full/index.mjs +6 -4
- package/dist/index.d.mts +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.js +15 -13
- package/dist/index.mjs +7 -5
- package/dist/metadata/index.d.mts +22 -2
- package/dist/metadata/index.d.ts +22 -2
- package/dist/metadata/index.js +27 -17
- package/dist/metadata/index.mjs +27 -16
- package/dist/resolve-BsLBxlBi.d.mts +24 -0
- package/dist/resolve-BsLBxlBi.d.ts +24 -0
- package/dist/runtime/index.js +5 -4
- package/dist/runtime/index.mjs +3 -2
- package/dist/shared/index.d.mts +10 -0
- package/dist/shared/index.d.ts +10 -0
- package/dist/shared/index.js +23 -0
- package/dist/shared/index.mjs +2 -0
- package/dist/static/index.js +6 -5
- package/dist/static/index.mjs +3 -2
- package/docs_for_llm/actions.doc.md +77 -0
- package/docs_for_llm/advancedset.doc.md +89 -0
- package/docs_for_llm/affix.doc.md +15 -7
- package/docs_for_llm/aksk.doc.md +111 -0
- package/docs_for_llm/az.doc.md +17 -11
- package/docs_for_llm/badge.doc.md +6 -5
- package/docs_for_llm/billtypes.doc.md +17 -11
- package/docs_for_llm/breadcrumb.doc.md +6 -3
- package/docs_for_llm/button.doc.md +34 -18
- package/docs_for_llm/buttonlink.doc.md +55 -0
- package/docs_for_llm/card.doc.md +8 -5
- package/docs_for_llm/cardcol.doc.md +78 -0
- package/docs_for_llm/cardcols.doc.md +84 -0
- package/docs_for_llm/cardcontent.doc.md +10 -10
- package/docs_for_llm/cardtabs.doc.md +106 -0
- package/docs_for_llm/carousel.doc.md +8 -7
- package/docs_for_llm/cascader.doc.md +46 -25
- package/docs_for_llm/checkbox.doc.md +25 -13
- package/docs_for_llm/cidrinput.doc.md +83 -0
- package/docs_for_llm/code.doc.md +22 -11
- package/docs_for_llm/collapse.doc.md +9 -6
- package/docs_for_llm/colorpicker.doc.md +104 -0
- package/docs_for_llm/copy.doc.md +15 -13
- package/docs_for_llm/copyhover.doc.md +59 -0
- package/docs_for_llm/copyrow.doc.md +71 -0
- package/docs_for_llm/datepicker.doc.md +51 -39
- package/docs_for_llm/description.doc.md +75 -0
- package/docs_for_llm/descriptions.doc.md +9 -6
- package/docs_for_llm/dialog.doc.md +48 -77
- package/docs_for_llm/divider.doc.md +9 -7
- package/docs_for_llm/drawer.doc.md +43 -84
- package/docs_for_llm/dropdown.doc.md +52 -21
- package/docs_for_llm/duration.doc.md +76 -0
- package/docs_for_llm/editable.doc.md +36 -14
- package/docs_for_llm/ellipsis.doc.md +10 -5
- package/docs_for_llm/filtertablefieldsdialog.doc.md +99 -0
- package/docs_for_llm/flex.doc.md +74 -0
- package/docs_for_llm/form.doc.md +33 -14
- package/docs_for_llm/formiteminput.doc.md +128 -0
- package/docs_for_llm/formitemspinner.doc.md +105 -0
- package/docs_for_llm/formitemswitch.doc.md +113 -0
- package/docs_for_llm/formitemtableconfigs.doc.md +95 -0
- package/docs_for_llm/grid.doc.md +7 -5
- package/docs_for_llm/header.doc.md +85 -0
- package/docs_for_llm/icon.doc.md +12 -8
- package/docs_for_llm/icontooltip.doc.md +121 -0
- package/docs_for_llm/input.doc.md +90 -39
- package/docs_for_llm/instancelist.doc.md +113 -0
- package/docs_for_llm/instancenum.doc.md +95 -0
- package/docs_for_llm/ipinput.doc.md +77 -0
- package/docs_for_llm/kspstatus.doc.md +82 -0
- package/docs_for_llm/kvcode.doc.md +76 -0
- package/docs_for_llm/layoutcontent.doc.md +17 -17
- package/docs_for_llm/layoutlistcontent.doc.md +95 -0
- package/docs_for_llm/layoutpermissioncontent.doc.md +84 -0
- package/docs_for_llm/layoutstandardlist.doc.md +120 -0
- package/docs_for_llm/layouttabs.doc.md +101 -0
- package/docs_for_llm/lazymount.doc.md +73 -0
- package/docs_for_llm/lazyteleport.doc.md +76 -0
- package/docs_for_llm/menu.doc.md +14 -11
- package/docs_for_llm/message.doc.md +48 -10
- package/docs_for_llm/pagination.doc.md +30 -17
- package/docs_for_llm/paginationplus.doc.md +31 -10
- package/docs_for_llm/password.doc.md +86 -0
- package/docs_for_llm/popover.doc.md +24 -55
- package/docs_for_llm/progress.doc.md +13 -10
- package/docs_for_llm/projects.doc.md +91 -0
- package/docs_for_llm/protable.doc.md +89 -15
- package/docs_for_llm/queuevisualrange.doc.md +78 -0
- package/docs_for_llm/radio.doc.md +23 -8
- package/docs_for_llm/rate.doc.md +122 -0
- package/docs_for_llm/region.doc.md +25 -13
- package/docs_for_llm/search.doc.md +120 -0
- package/docs_for_llm/searchinput.doc.md +111 -0
- package/docs_for_llm/searchitems.doc.md +116 -0
- package/docs_for_llm/searchselect.doc.md +126 -0
- package/docs_for_llm/select.doc.md +40 -55
- package/docs_for_llm/sidebar.doc.md +133 -0
- package/docs_for_llm/skeleton.doc.md +117 -0
- package/docs_for_llm/slider.doc.md +31 -21
- package/docs_for_llm/spin.doc.md +8 -5
- package/docs_for_llm/spinner.doc.md +28 -18
- package/docs_for_llm/split.doc.md +157 -0
- package/docs_for_llm/sshkeys.doc.md +88 -0
- package/docs_for_llm/status.doc.md +14 -9
- package/docs_for_llm/steps.doc.md +10 -7
- package/docs_for_llm/switch.doc.md +17 -14
- package/docs_for_llm/table.doc.md +118 -51
- package/docs_for_llm/tablecolumnid.doc.md +36 -16
- package/docs_for_llm/tabs.doc.md +19 -10
- package/docs_for_llm/tag.doc.md +19 -10
- package/docs_for_llm/timeline.doc.md +109 -0
- package/docs_for_llm/timepicker.doc.md +57 -38
- package/docs_for_llm/timerange.doc.md +157 -0
- package/docs_for_llm/tip.doc.md +20 -11
- package/docs_for_llm/tooltip.doc.md +55 -29
- package/docs_for_llm/tour.doc.md +48 -29
- package/docs_for_llm/transfer.doc.md +40 -29
- package/docs_for_llm/tree.doc.md +65 -23
- package/docs_for_llm/treeselect.doc.md +37 -48
- package/docs_for_llm/upload.doc.md +56 -32
- package/docs_for_llm/useCRUD.doc.md +49 -0
- package/docs_for_llm/useCountdown.doc.md +43 -0
- package/docs_for_llm/useDetail.doc.md +48 -0
- package/docs_for_llm/useDialog.doc.md +46 -0
- package/docs_for_llm/useEntity.doc.md +45 -0
- package/docs_for_llm/useEventListener.doc.md +44 -0
- package/docs_for_llm/useFalseUntilTruthy.doc.md +41 -0
- package/docs_for_llm/useGetCopyAuthText.doc.md +35 -0
- package/docs_for_llm/useGetUserPermission.doc.md +43 -0
- package/docs_for_llm/useGroup.doc.md +48 -0
- package/docs_for_llm/useIdEntities.doc.md +48 -0
- package/docs_for_llm/useIdEntity.doc.md +103 -0
- package/docs_for_llm/useInterval.doc.md +43 -0
- package/docs_for_llm/useLayoutStandardList.doc.md +38 -0
- package/docs_for_llm/useMessage.doc.md +46 -0
- package/docs_for_llm/useModifyCache.doc.md +37 -0
- package/docs_for_llm/useOpenDialog.doc.md +41 -0
- package/docs_for_llm/usePagination.doc.md +60 -0
- package/docs_for_llm/usePersist.doc.md +54 -0
- package/docs_for_llm/usePoll.doc.md +41 -0
- package/docs_for_llm/useRoutePlus.doc.md +34 -0
- package/docs_for_llm/useRouterPlus.doc.md +34 -0
- package/docs_for_llm/useSearch.doc.md +68 -0
- package/docs_for_llm/useShell.doc.md +43 -0
- package/docs_for_llm/useSkip.doc.md +41 -0
- package/docs_for_llm/useStorageIdEntity.doc.md +46 -0
- package/docs_for_llm/useStore.doc.md +34 -0
- package/docs_for_llm/useTable.doc.md +57 -0
- package/docs_for_llm/useTableGroup.doc.md +47 -0
- package/docs_for_llm/useTableSort.doc.md +40 -0
- package/docs_for_llm/useToState.doc.md +112 -0
- package/docs_for_llm/useUser.doc.md +38 -0
- package/docs_for_llm/useValidForm.doc.md +41 -0
- package/docs_for_llm/vdialog.doc.md +129 -0
- package/docs_for_llm/vdrawer.doc.md +119 -0
- package/docs_for_llm/virtuallist.doc.md +6 -3
- package/hooks/useCRUD.json +61 -0
- package/hooks/useCountdown.json +49 -0
- package/hooks/useDetail.json +67 -0
- package/hooks/useDialog.json +49 -0
- package/hooks/useEntity.json +61 -0
- package/hooks/useEventListener.json +61 -0
- package/hooks/useFalseUntilTruthy.json +43 -0
- package/hooks/useGetCopyAuthText.json +36 -0
- package/hooks/useGetUserPermission.json +55 -0
- package/hooks/useGroup.json +49 -0
- package/hooks/useIdEntities.json +61 -0
- package/hooks/useInterval.json +55 -0
- package/hooks/useLayoutStandardList.json +36 -0
- package/hooks/useMessage.json +73 -0
- package/hooks/useModifyCache.json +36 -0
- package/hooks/useOpenDialog.json +43 -0
- package/hooks/usePagination.json +49 -0
- package/hooks/usePersist.json +61 -0
- package/hooks/usePoll.json +43 -0
- package/hooks/useRoutePlus.json +36 -0
- package/hooks/useRouterPlus.json +36 -0
- package/hooks/useSearch.json +56 -0
- package/hooks/useShell.json +49 -0
- package/hooks/useSkip.json +43 -0
- package/hooks/useStorageIdEntity.json +67 -0
- package/hooks/useStore.json +36 -0
- package/hooks/useTable.json +49 -0
- package/hooks/useTableGroup.json +43 -0
- package/hooks/useTableSort.json +43 -0
- package/hooks/useUser.json +36 -0
- package/hooks/useValidForm.json +43 -0
- package/package.json +12 -6
- package/dist/chunk-HDV7ETXE.mjs +0 -1055
- package/dist/chunk-HPAUCD5I.js +0 -156
- package/dist/chunk-L4DS3EXI.mjs +0 -133
- package/dist/chunk-YWY3D4J7.js +0 -1082
package/docs_for_llm/code.doc.md
CHANGED
|
@@ -12,23 +12,31 @@ import { Code } from '@king-design/vue';
|
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## 属性 (Props)
|
|
15
|
-
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 示例 |
|
|
16
|
-
| --- | --- | --- | --- | --- | --- |
|
|
17
|
-
| value | `string` | `""` | 否 | 编辑器的代码内容,可用 v-model 双向绑定 | `<Code v-model="code" />` |
|
|
18
|
-
| language | `string` | `"javascript"` | 否 | 指定编程语言 | `<Code language="typescript" />` |
|
|
19
|
-
| theme | `"vs" | "vs-dark" | "hc-black"` | `"vs"` | 否 | 指定主题 | `<Code theme="vs-dark" />` |
|
|
20
|
-
| readOnly | `boolean` | `false` | 否 | 是否只读 | `<Code readOnly />` |
|
|
21
|
-
| width | `string` | `"100%"` | 否 | 指定宽度,需要带单位 | `<Code width="800px" />` |
|
|
22
|
-
| height | `string` | `"100%"` | 否 | 指定高度,需要带单位 | `<Code height="400px" />` |
|
|
23
|
-
| options | `editor.IStandaloneEditorConstructionOptions` | `{}` | 否 | 其它 Monaco Editor 配置,会传给 monaco.editor.create() 方法 | `<Code :options="{minimap: {enabled: false}}" />` |
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| value | `string` | `""` | 否 | 编辑器的代码内容,可用 v-model 双向绑定 | - | `<Code v-model="code" />` |
|
|
18
|
+
| language | `string` | `"javascript"` | 否 | 指定编程语言 | - | `<Code language="typescript" />` |
|
|
19
|
+
| theme | `"vs" | "vs-dark" | "hc-black"` | `"vs"` | 否 | 指定主题 | - | `<Code theme="vs-dark" />` |
|
|
20
|
+
| readOnly | `boolean` | `false` | 否 | 是否只读 | - | `<Code readOnly />` |
|
|
21
|
+
| width | `string` | `"100%"` | 否 | 指定宽度,需要带单位 | - | `<Code width="800px" />` |
|
|
22
|
+
| height | `string` | `"100%"` | 否 | 指定高度,需要带单位 | - | `<Code height="400px" />` |
|
|
23
|
+
| options | `editor.IStandaloneEditorConstructionOptions` | `{}` | 否 | 其它 Monaco Editor 配置,会传给 monaco.editor.create() 方法 | - | `<Code :options="{minimap: {enabled: false}}" />` |
|
|
24
24
|
|
|
25
25
|
## 事件 (Events)
|
|
26
26
|
| 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
|
|
27
27
|
| --- | --- | --- | --- | --- |
|
|
28
28
|
| ready | `@ready` | 编辑器加载并实例化完成时触发 | `editor: editor.IStandaloneCodeEditor, Editor: typeof editor, Monaco: typeof monaco` | `<Code @ready="handleReady" />` |
|
|
29
29
|
|
|
30
|
-
###
|
|
31
|
-
**ready
|
|
30
|
+
### 事件参数说明
|
|
31
|
+
**ready**
|
|
32
|
+
|
|
33
|
+
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|
|
34
|
+
| --- | --- | --- | --- | --- |
|
|
35
|
+
| editor | `editor.IStandaloneCodeEditor` | 是 | - | 编辑器实例 |
|
|
36
|
+
| Editor | `typeof editor` | 是 | - | Editor 模块 |
|
|
37
|
+
| Monaco | `typeof monaco` | 是 | - | Monaco 模块 |
|
|
38
|
+
|
|
39
|
+
事件处理示例:
|
|
32
40
|
```typescript
|
|
33
41
|
const handleReady = (editor, Editor, Monaco) => {
|
|
34
42
|
console.log('编辑器已加载', editor);
|
|
@@ -37,14 +45,17 @@ const handleReady = (editor, Editor, Monaco) => {
|
|
|
37
45
|
```
|
|
38
46
|
|
|
39
47
|
## 常见错误与正确用法 (Anti-Hallucination)
|
|
48
|
+
### height/width 未带单位
|
|
40
49
|
> **错误用法**: `<Code height="200" /> <!-- 无单位 -->`
|
|
41
50
|
> **正确写法**: `<Code height="200px" />`
|
|
42
51
|
> **说明**: height 和 width 需要带单位,如 px、%、vh 等
|
|
43
52
|
|
|
53
|
+
### language 拼写错误
|
|
44
54
|
> **错误用法**: `<Code language="Javascript" /> <!-- 大写错误 -->`
|
|
45
55
|
> **正确写法**: `<Code language="javascript" />`
|
|
46
56
|
> **说明**: language 应使用小写,如 javascript、typescript
|
|
47
57
|
|
|
58
|
+
### 未正确导入 Code 组件
|
|
48
59
|
> **错误用法**: `import { Code } from '@king-design/vue'; // 可能未包含在默认 bundle 中`
|
|
49
60
|
> **正确写法**: `// 确保项目配置了 Monaco Editor
|
|
50
61
|
import { Code } from '@king-design/vue';`
|
|
@@ -12,12 +12,12 @@ import { Collapse, CollapseItem } from '@king-design/vue';
|
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## 属性 (Props)
|
|
15
|
-
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 示例 |
|
|
16
|
-
| --- | --- | --- | --- | --- | --- |
|
|
17
|
-
| value | `string[]` | `undefined` | 否 | 当前展开的 CollapseItem 取值,可用 v-model 双向绑定 | `<Collapse v-model="activeKeys"></Collapse>` |
|
|
18
|
-
| accordion | `boolean` | `false` | 否 | 是否展示手风琴风格,同时只能展开一个面板 | `<Collapse v-model="activeKeys" accordion></Collapse>` |
|
|
19
|
-
| arrow | `"right" | "left"` | `"right"` | 否 | 指定箭头位置 | `<Collapse arrow="left"></Collapse>` |
|
|
20
|
-
| noBorder | `boolean` | `false` | 否 | 是否展示无边框的简洁样式 | `<Collapse noBorder></Collapse>` |
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| value | `string[]` | `undefined` | 否 | 当前展开的 CollapseItem 取值,可用 v-model 双向绑定 | - | `<Collapse v-model="activeKeys"></Collapse>` |
|
|
18
|
+
| accordion | `boolean` | `false` | 否 | 是否展示手风琴风格,同时只能展开一个面板 | - | `<Collapse v-model="activeKeys" accordion></Collapse>` |
|
|
19
|
+
| arrow | `"right" | "left"` | `"right"` | 否 | 指定箭头位置 | - | `<Collapse arrow="left"></Collapse>` |
|
|
20
|
+
| noBorder | `boolean` | `false` | 否 | 是否展示无边框的简洁样式 | - | `<Collapse noBorder></Collapse>` |
|
|
21
21
|
|
|
22
22
|
## 插槽 (Slots)
|
|
23
23
|
| 插槽名 | 说明 | 模板写法 | 示例 |
|
|
@@ -39,12 +39,14 @@ import { Collapse, CollapseItem } from '@king-design/vue';
|
|
|
39
39
|
- `@hide`: 收起时触发
|
|
40
40
|
|
|
41
41
|
## 常见错误与正确用法 (Anti-Hallucination)
|
|
42
|
+
### value 类型错误,使用字符串而非数组
|
|
42
43
|
> **错误用法**: `const activeKey = ref('1');
|
|
43
44
|
<Collapse v-model="activeKey">`
|
|
44
45
|
> **正确写法**: `const activeKeys = ref(['1']);
|
|
45
46
|
<Collapse v-model="activeKeys">`
|
|
46
47
|
> **说明**: Collapse 的 value 必须是字符串数组类型,即使使用 accordion 模式
|
|
47
48
|
|
|
49
|
+
### CollapseItem 未设置 value 导致无法正确控制
|
|
48
50
|
> **错误用法**: `<Collapse v-model="activeKeys">
|
|
49
51
|
<CollapseItem title="面板">内容</CollapseItem>
|
|
50
52
|
</Collapse>`
|
|
@@ -53,6 +55,7 @@ import { Collapse, CollapseItem } from '@king-design/vue';
|
|
|
53
55
|
</Collapse>`
|
|
54
56
|
> **说明**: 建议为 CollapseItem 显式设置 value,便于控制展开状态
|
|
55
57
|
|
|
58
|
+
### arrow 值拼写错误
|
|
56
59
|
> **错误用法**: `<Collapse arrow="start">`
|
|
57
60
|
> **正确写法**: `<Collapse arrow="left">`
|
|
58
61
|
> **说明**: arrow 只支持 right 和 left 两个值
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
# 颜色选择器 (Colorpicker)
|
|
2
|
+
|
|
3
|
+
颜色选择器组件,用于选择纯色或带透明度的颜色值。点击触发器后会弹出调色面板,支持预设颜色、自定义弹出容器和弹层定位。
|
|
4
|
+
|
|
5
|
+
**关键词**: colorpicker, 颜色选择器, 颜色, 主题色, rgba, hex, 预设颜色
|
|
6
|
+
|
|
7
|
+
**使用场景**: 主题颜色配置、图表颜色设置、标签颜色自定义、运营后台品牌色选择
|
|
8
|
+
|
|
9
|
+
## 导入语句
|
|
10
|
+
```typescript
|
|
11
|
+
import { Colorpicker } from '@king-design/vue';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 属性 (Props)
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| value | `string` | `undefined` | 是 | 当前颜色值,必填。支持十六进制颜色或 rgba 字符串,可用 v-model 双向绑定。 | - | `<Colorpicker v-model="color" />` |
|
|
18
|
+
| presets | `string[]` | `["#D0021B", "#F5A623", "#F8E71C", "#8B572A", "#7ED321", "#417505", "#BD10E0", "#9013FE", "#4A90E2", "#50E3C2", "#B8E986", "#000000", "#4A4A4A", "#9B9B9B", "#FFFFFF"]` | 否 | 预设颜色列表,展示在面板底部,便于快速选择常用颜色。 | - | `<Colorpicker v-model="color" :presets="['#1677ff', '#52c41a', '#faad14']" />` |
|
|
19
|
+
| size | `"large" | "default" | "small" | "mini"` | `"default"` | 否 | 尺寸。 | - | `<Colorpicker v-model="color" size="small" />` |
|
|
20
|
+
| disabled | `boolean` | `false` | 否 | 是否禁用,禁用后无法打开面板和修改颜色。 | - | `<Colorpicker v-model="color" disabled />` |
|
|
21
|
+
| container | `string | ((parentDom: Element, anchor: Node | null) => Element)` | `undefined` | 否 | 指定弹出层挂载位置。通常在 Dialog、Drawer 等容器中需要显式指定,避免层级或定位异常。 | - | `<Colorpicker v-model="color" :container="() => document.body" />` |
|
|
22
|
+
| show | `boolean` | `undefined` | 否 | 是否展示颜色面板,可用于受控显示。 | - | `<Colorpicker v-model="color" :show="visible" />` |
|
|
23
|
+
| position | `DropdownProps['position']` | `{ collision: 'fit' }` | 否 | 下拉面板定位配置,继承 Dropdown 的 position 能力。 | - | `<Colorpicker v-model="color" :position="{ placement: 'bottom-start', collision: 'fit' }" />` |
|
|
24
|
+
|
|
25
|
+
## 常见错误与正确用法 (Anti-Hallucination)
|
|
26
|
+
### 未传入有效颜色字符串
|
|
27
|
+
> **错误用法**: `<Colorpicker :value="undefined" />`
|
|
28
|
+
> **正确写法**: `<Colorpicker v-model="color" />`
|
|
29
|
+
> **说明**: Colorpicker 的 value 是必填项,应提供合法的颜色字符串并通过 v-model 维护状态。
|
|
30
|
+
|
|
31
|
+
### 在弹层容器内使用时未指定 container
|
|
32
|
+
> **错误用法**: `<Dialog v-model="visible"><Colorpicker v-model="color" /></Dialog>`
|
|
33
|
+
> **正确写法**: `<Dialog v-model="visible"><Colorpicker v-model="color" :container="() => document.body" /></Dialog>`
|
|
34
|
+
> **说明**: Colorpicker 内部会渲染下拉面板,在 Dialog、Drawer 等场景中建议显式设置挂载容器,避免遮挡和定位问题。
|
|
35
|
+
|
|
36
|
+
## 使用示例
|
|
37
|
+
### 基础用法
|
|
38
|
+
**场景**: 选择品牌主色或主题色
|
|
39
|
+
|
|
40
|
+
选择主题色并实时预览。
|
|
41
|
+
|
|
42
|
+
**使用的 API**: 属性: value
|
|
43
|
+
|
|
44
|
+
```vue
|
|
45
|
+
<script setup lang="ts">
|
|
46
|
+
import { ref } from 'vue';
|
|
47
|
+
import { Colorpicker } from '@king-design/vue';
|
|
48
|
+
|
|
49
|
+
const color = ref('#1677ff');
|
|
50
|
+
</script>
|
|
51
|
+
<template>
|
|
52
|
+
<div style="display: flex; align-items: center; gap: 12px;">
|
|
53
|
+
<Colorpicker v-model="color" />
|
|
54
|
+
<span>当前颜色:{{ color }}</span>
|
|
55
|
+
</div>
|
|
56
|
+
</template>
|
|
57
|
+
```
|
|
58
|
+
|
|
59
|
+
### 预设颜色
|
|
60
|
+
**场景**: 为运营后台提供固定品牌色
|
|
61
|
+
|
|
62
|
+
通过 presets 提供常用颜色快捷选择。
|
|
63
|
+
|
|
64
|
+
**使用的 API**: 属性: value, presets
|
|
65
|
+
|
|
66
|
+
```vue
|
|
67
|
+
<script setup lang="ts">
|
|
68
|
+
import { ref } from 'vue';
|
|
69
|
+
import { Colorpicker } from '@king-design/vue';
|
|
70
|
+
|
|
71
|
+
const color = ref('#52c41a');
|
|
72
|
+
const presets = ['#1677ff', '#52c41a', '#faad14', '#f5222d', '#722ed1'];
|
|
73
|
+
</script>
|
|
74
|
+
<template>
|
|
75
|
+
<Colorpicker v-model="color" :presets="presets" />
|
|
76
|
+
</template>
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
### 弹窗内使用
|
|
80
|
+
**场景**: 在弹窗中配置颜色字段
|
|
81
|
+
|
|
82
|
+
在弹窗中显式指定挂载容器,避免弹层错位。
|
|
83
|
+
|
|
84
|
+
**使用的 API**: 属性: value, container
|
|
85
|
+
|
|
86
|
+
```vue
|
|
87
|
+
<script setup lang="ts">
|
|
88
|
+
import { ref } from 'vue';
|
|
89
|
+
import { Button, Colorpicker, Dialog } from '@king-design/vue';
|
|
90
|
+
|
|
91
|
+
const visible = ref(false);
|
|
92
|
+
const color = ref('rgba(22, 119, 255, 0.8)');
|
|
93
|
+
</script>
|
|
94
|
+
<template>
|
|
95
|
+
<Button @click="visible = true">编辑颜色</Button>
|
|
96
|
+
<Dialog v-model="visible" title="颜色设置">
|
|
97
|
+
<Colorpicker v-model="color" :container="() => document.body" />
|
|
98
|
+
</Dialog>
|
|
99
|
+
</template>
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## 相关组件
|
|
103
|
+
Input, Dropdown, Dialog
|
|
104
|
+
|
package/docs_for_llm/copy.doc.md
CHANGED
|
@@ -12,10 +12,10 @@ import { Copy } from '@king-design/vue';
|
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## 属性 (Props)
|
|
15
|
-
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 示例 |
|
|
16
|
-
| --- | --- | --- | --- | --- | --- |
|
|
17
|
-
| text | `string` | `undefined` | 否 | 复制文案值,要复制到剪贴板的内容 | `<Copy text="要复制的内容"><Button>复制</Button></Copy>` |
|
|
18
|
-
| showMessage | `boolean` | `true` | 否 | 复制成功/失败时,是否展示 Message 提示 | `<Copy text="内容" :showMessage="false"><Button>静默复制</Button></Copy>` |
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| text | `string` | `undefined` | 否 | 复制文案值,要复制到剪贴板的内容 | - | `<Copy text="要复制的内容"><Button>复制</Button></Copy>` |
|
|
18
|
+
| showMessage | `boolean` | `true` | 否 | 复制成功/失败时,是否展示 Message 提示 | - | `<Copy text="内容" :showMessage="false"><Button>静默复制</Button></Copy>` |
|
|
19
19
|
|
|
20
20
|
## 事件 (Events)
|
|
21
21
|
| 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
|
|
@@ -23,30 +23,32 @@ import { Copy } from '@king-design/vue';
|
|
|
23
23
|
| success | `@success` | 复制成功时触发 | `value: string` | `<Copy text="内容" @success="handleSuccess"></Copy>` |
|
|
24
24
|
| error | `@error` | 复制失败时触发 | `-` | `<Copy text="内容" @error="handleError"></Copy>` |
|
|
25
25
|
|
|
26
|
-
###
|
|
27
|
-
**success
|
|
26
|
+
### 事件参数说明
|
|
27
|
+
**success**
|
|
28
|
+
|
|
29
|
+
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|
|
30
|
+
| --- | --- | --- | --- | --- |
|
|
31
|
+
| value | `string` | 是 | - | 复制的内容 |
|
|
32
|
+
|
|
33
|
+
事件处理示例:
|
|
28
34
|
```typescript
|
|
29
35
|
const handleSuccess = (value: string) => {
|
|
30
36
|
console.log('复制成功:', value);
|
|
31
37
|
};
|
|
32
38
|
```
|
|
33
39
|
|
|
34
|
-
**error**:
|
|
35
|
-
```typescript
|
|
36
|
-
const handleError = () => {
|
|
37
|
-
console.log('复制失败');
|
|
38
|
-
};
|
|
39
|
-
```
|
|
40
|
-
|
|
41
40
|
## 常见错误与正确用法 (Anti-Hallucination)
|
|
41
|
+
### 未设置 text 属性
|
|
42
42
|
> **错误用法**: `<Copy><Button>复制</Button></Copy>`
|
|
43
43
|
> **正确写法**: `<Copy text="要复制的内容"><Button>复制</Button></Copy>`
|
|
44
44
|
> **说明**: 必须通过 text 属性指定要复制的内容
|
|
45
45
|
|
|
46
|
+
### 未提供触发元素
|
|
46
47
|
> **错误用法**: `<Copy text="内容" />`
|
|
47
48
|
> **正确写法**: `<Copy text="内容"><Button>复制</Button></Copy>`
|
|
48
49
|
> **说明**: Copy 组件需要包裹一个子元素作为触发器
|
|
49
50
|
|
|
51
|
+
### success 事件处理函数参数错误
|
|
50
52
|
> **错误用法**: `const handleSuccess = () => {
|
|
51
53
|
console.log('复制成功');
|
|
52
54
|
}`
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# 悬浮复制 (CopyHover)
|
|
2
|
+
|
|
3
|
+
在文本悬停时才露出复制图标的轻量组件,适合详情字段、表格单元格等需要降低视觉噪音的复制场景。
|
|
4
|
+
|
|
5
|
+
**关键词**: copy hover, hover copy, 复制悬浮, 悬停复制, 轻量复制按钮
|
|
6
|
+
|
|
7
|
+
**使用场景**: 详情字段快速复制、列表项悬浮复制、敏感信息禁用复制
|
|
8
|
+
|
|
9
|
+
## 导入语句
|
|
10
|
+
```typescript
|
|
11
|
+
import { CopyHover } from '@ksyun-internal/versatile';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 属性 (Props)
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| text | `string` | `""` | 否 | 待复制文本 | - | - |
|
|
18
|
+
| showMessage | `boolean` | `true` | 否 | 复制成功/失败时,是否展示 Message 提示 | `inherited:Copy` | `<Copy text="内容" :showMessage="false"><Button>静默复制</Button></Copy>` |
|
|
19
|
+
| tooltipText | `string` | `undefined` | 否 | 复制按钮提示文案 | - | - |
|
|
20
|
+
| disabled | `boolean` | `undefined` | 否 | 是否禁用复制 | - | - |
|
|
21
|
+
|
|
22
|
+
## 使用示例
|
|
23
|
+
### 详情字段悬浮复制
|
|
24
|
+
**场景**: 在详情页展示实例 ID,同时保持界面简洁。
|
|
25
|
+
|
|
26
|
+
只在悬停时显示复制图标,适合长 ID、Token 等字段。
|
|
27
|
+
|
|
28
|
+
**使用的 API**: 属性: text, tooltipText
|
|
29
|
+
|
|
30
|
+
```vue
|
|
31
|
+
<script setup lang="ts">
|
|
32
|
+
import { CopyHover } from '@ksyun-internal/versatile';
|
|
33
|
+
</script>
|
|
34
|
+
|
|
35
|
+
<template>
|
|
36
|
+
<CopyHover text="i-2ze7x5a4a92b" tooltip-text="复制实例 ID" />
|
|
37
|
+
</template>
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
### 敏感字段禁止复制
|
|
41
|
+
**场景**: 在脱敏展示 SecretKey 等敏感内容时显式禁用复制。
|
|
42
|
+
|
|
43
|
+
对脱敏后的内容保留展示但关闭复制。
|
|
44
|
+
|
|
45
|
+
**使用的 API**: 属性: text, tooltipText, disabled
|
|
46
|
+
|
|
47
|
+
```vue
|
|
48
|
+
<script setup lang="ts">
|
|
49
|
+
import { CopyHover } from '@ksyun-internal/versatile';
|
|
50
|
+
</script>
|
|
51
|
+
|
|
52
|
+
<template>
|
|
53
|
+
<CopyHover text="sk-******" tooltip-text="敏感信息不可复制" :disabled="true" />
|
|
54
|
+
</template>
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## 相关组件
|
|
58
|
+
Copy, CopyRow
|
|
59
|
+
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# 复制行 (CopyRow)
|
|
2
|
+
|
|
3
|
+
用于展示并复制一整行文本的业务组件,适合实例 ID、API 地址、回源域名等长文本信息。
|
|
4
|
+
|
|
5
|
+
**关键词**: copy row, copy text row, 复制行, 文本复制, 长文本复制
|
|
6
|
+
|
|
7
|
+
**使用场景**: 详情页字段复制、表格文本复制、自定义内容的复制展示行
|
|
8
|
+
|
|
9
|
+
## 导入语句
|
|
10
|
+
```typescript
|
|
11
|
+
import { CopyRow } from '@ksyun-internal/versatile';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 属性 (Props)
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| text | `string` | `undefined` | 否 | 待展示和复制的文本内容 | - | - |
|
|
18
|
+
| maxLines | `number` | `undefined` | 否 | 最大展示行数 | - | - |
|
|
19
|
+
| position | `any` | `undefined` | 否 | 复制提示弹出位置 | - | - |
|
|
20
|
+
| disabled | `boolean` | `undefined` | 否 | 是否禁用复制 | - | - |
|
|
21
|
+
| disabledTooltip | `boolean` | `undefined` | 否 | 禁用时是否显示 tooltip | - | - |
|
|
22
|
+
|
|
23
|
+
## 插槽 (Slots)
|
|
24
|
+
| 插槽名 | 说明 | 模板写法 | 示例 |
|
|
25
|
+
| --- | --- | --- | --- |
|
|
26
|
+
| default | 自定义行内容 | `<CopyRow>...</CopyRow>` | - |
|
|
27
|
+
|
|
28
|
+
## 使用示例
|
|
29
|
+
### 接口地址一键复制
|
|
30
|
+
**场景**: 在详情页展示并复制较长的接口地址或资源标识。
|
|
31
|
+
|
|
32
|
+
在单行文本中集成复制能力和超长内容省略。
|
|
33
|
+
|
|
34
|
+
**使用的 API**: 属性: text, maxLines
|
|
35
|
+
|
|
36
|
+
```vue
|
|
37
|
+
<script setup lang="ts">
|
|
38
|
+
import { CopyRow } from '@ksyun-internal/versatile';
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
<template>
|
|
42
|
+
<CopyRow
|
|
43
|
+
text="https://api.ksyun.com/v1/instance/describe"
|
|
44
|
+
:max-lines="1"
|
|
45
|
+
/>
|
|
46
|
+
</template>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 自定义复制行内容
|
|
50
|
+
**场景**: 在详情页用自定义文案组合显示可复制字段。
|
|
51
|
+
|
|
52
|
+
通过默认插槽自定义展示样式,同时保留复制能力。
|
|
53
|
+
|
|
54
|
+
**使用的 API**: 属性: text
|
|
55
|
+
|
|
56
|
+
```vue
|
|
57
|
+
<script setup lang="ts">
|
|
58
|
+
import { CopyRow } from '@ksyun-internal/versatile';
|
|
59
|
+
</script>
|
|
60
|
+
|
|
61
|
+
<template>
|
|
62
|
+
<CopyRow text="bucket-logs-001">
|
|
63
|
+
<strong>日志桶:</strong>
|
|
64
|
+
<span>bucket-logs-001</span>
|
|
65
|
+
</CopyRow>
|
|
66
|
+
</template>
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## 相关组件
|
|
70
|
+
CopyHover, TableColumnId
|
|
71
|
+
|
|
@@ -12,69 +12,81 @@ import { Datepicker } from '@king-design/vue';
|
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## 属性 (Props)
|
|
15
|
-
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 示例 |
|
|
16
|
-
| --- | --- | --- | --- | --- | --- |
|
|
17
|
-
| value | `Value | Value[] | [Value, Value] | [Value, Value][]` | `""` | 否 | 当前选择的值,可用 v-model 双向绑定。范围选择时为 [Value, Value] | `<Datepicker v-model="date" />` |
|
|
18
|
-
| type | `"date" | "datetime" | "year" | "month"` | `"date"` | 否 | 组件类型 | `<Datepicker type="datetime" />` |
|
|
19
|
-
| range | `boolean` | `false` | 否 | 是否选择日期范围 | `<Datepicker range />` |
|
|
20
|
-
| multiple | `boolean` | `false` | 否 | 是否支持多选 | `<Datepicker multiple />` |
|
|
21
|
-
|
|
|
22
|
-
|
|
|
23
|
-
|
|
|
24
|
-
|
|
|
25
|
-
|
|
|
26
|
-
|
|
|
27
|
-
|
|
|
28
|
-
|
|
|
29
|
-
|
|
|
30
|
-
|
|
|
31
|
-
|
|
|
32
|
-
|
|
|
33
|
-
|
|
|
34
|
-
|
|
|
35
|
-
|
|
|
36
|
-
|
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| value | `Value | Value[] | [Value, Value] | [Value, Value][]` | `""` | 否 | 当前选择的值,可用 v-model 双向绑定。范围选择时为 [Value, Value] | - | `<Datepicker v-model="date" />` |
|
|
18
|
+
| type | `"date" | "datetime" | "year" | "month"` | `"date"` | 否 | 组件类型 | - | `<Datepicker type="datetime" />` |
|
|
19
|
+
| range | `boolean` | `false` | 否 | 是否选择日期范围 | - | `<Datepicker range />` |
|
|
20
|
+
| multiple | `boolean` | `false` | 否 | 是否支持多选 | - | `<Datepicker multiple />` |
|
|
21
|
+
| filterable | `boolean` | `false` | 否 | 是否支持筛选输入 | - | `<Datepicker filterable />` |
|
|
22
|
+
| loading | `boolean` | `false` | 否 | 数据加载状态 | - | `<Datepicker :loading="loading" />` |
|
|
23
|
+
| disabled | `boolean` | `false` | 否 | 是否禁用 | - | `<Datepicker disabled />` |
|
|
24
|
+
| name | `string` | `undefined` | 否 | 表单元素的 name 属性 | - | `<Datepicker name="startDate" />` |
|
|
25
|
+
| clearable | `boolean` | `false` | 否 | 是否可清空 | - | `<Datepicker clearable />` |
|
|
26
|
+
| size | `"large" | "default" | "small" | "mini"` | `"default"` | 否 | 尺寸 | - | `<Datepicker size="small" />` |
|
|
27
|
+
| placeholder | `string` | `"请选择日期"` | 否 | 占位文案 | - | `<Datepicker placeholder="选择开始日期" />` |
|
|
28
|
+
| format | `string` | `"YYYY-MM-DD HH:mm:ss"` | 否 | 日期格式化字符串 | - | `<Datepicker format="YYYY-MM-DD" />` |
|
|
29
|
+
| valueFormat | `string` | `undefined` | 否 | value 值的日期格式化字符串 | - | `<Datepicker valueFormat="YYYY-MM-DD" />` |
|
|
30
|
+
| showFormat | `string` | `undefined` | 否 | 展示的日期格式化字符串 | - | `<Datepicker showFormat="YYYY年MM月DD日" />` |
|
|
31
|
+
| min | `Value` | `undefined` | 否 | 最小可选日期 | - | `<Datepicker min="2024-01-01" />` |
|
|
32
|
+
| max | `Value` | `undefined` | 否 | 最大可选日期 | - | `<Datepicker max="2024-12-31" />` |
|
|
33
|
+
| disabledDate | `(v: Dayjs) => boolean` | `undefined` | 否 | 禁用日期的函数,返回 true 表示禁用该日期 | - | `<Datepicker :disabledDate="(d) => d.day() === 0" />` |
|
|
34
|
+
| shortcuts | `Shortcut[]` | `undefined` | 否 | 快捷方式配置 | - | `<Datepicker :shortcuts="shortcuts" />` |
|
|
35
|
+
| hideIcon | `boolean` | `false` | 否 | 是否隐藏后面的图标 | - | `<Datepicker hideIcon />` |
|
|
36
|
+
| fluid | `boolean` | `false` | 否 | 是否宽度 100% | - | `<Datepicker fluid />` |
|
|
37
|
+
| inline | `boolean` | `false` | 否 | 是否展示内联模式 | - | `<Datepicker inline />` |
|
|
38
|
+
| flat | `boolean` | `false` | 否 | 是否展示扁平样式 | - | `<Datepicker flat />` |
|
|
39
|
+
| width | `number | string` | `undefined` | 否 | 指定宽度,自动添加单位 px | - | `<Datepicker :width="200" />` |
|
|
40
|
+
| container | `string | ((parentDom: Element, anchor: Node | null) => Element)` | `undefined` | 否 | 指定弹出菜单追加的位置,默认 Dialog 组件会追加到 Dialog 中,其他追加到 body | - | `<Datepicker :container="() => document.body" />` |
|
|
41
|
+
| show | `boolean` | `false` | 否 | 是否展示菜单项(受控模式) | - | `<Datepicker :show="visible" />` |
|
|
42
|
+
| position | `Position | "left" | "bottom" | "right" | "top"` | `{my: 'left top+8', at: 'left bottom'}` | 否 | 菜单弹出的位置 | - | `<Datepicker position="top" />` |
|
|
43
|
+
| nowrap | `boolean` | `false` | 否 | 选中值区域是否不换行展示,适合单行紧凑布局 | - | `<Datepicker nowrap />` |
|
|
44
|
+
| draggable | `boolean` | `false` | 否 | 多选值是否支持拖动排序 | - | `<Datepicker multiple draggable />` |
|
|
45
|
+
| virtual | `boolean` | `false` | 否 | 是否开启虚拟列表,用于大数据量场景 | - | `<Datepicker virtual />` |
|
|
37
46
|
|
|
38
47
|
## 事件 (Events)
|
|
39
48
|
| 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
|
|
40
49
|
| --- | --- | --- | --- | --- |
|
|
41
50
|
| show | `@show` | 菜单弹出时触发 | `-` | `<Datepicker @show="handleShow" />` |
|
|
42
51
|
| hide | `@hide` | 菜单隐藏时触发 | `-` | `<Datepicker @hide="handleHide" />` |
|
|
43
|
-
| selecting | `@selecting` | 范围选择时,用户正在操作选择时触发 | `value: [Dayjs, Dayjs?]` | `<Datepicker range @selecting="handleSelecting" />` |
|
|
52
|
+
| selecting | `@selecting` | 范围选择时,用户正在操作选择时触发 | `value: [Dayjs, Dayjs?], confirmed: boolean` | `<Datepicker range @selecting="handleSelecting" />` |
|
|
44
53
|
|
|
45
|
-
###
|
|
46
|
-
**
|
|
47
|
-
```typescript
|
|
48
|
-
const handleShow = () => {
|
|
49
|
-
console.log('日期选择器已打开');
|
|
50
|
-
};
|
|
51
|
-
```
|
|
54
|
+
### 事件参数说明
|
|
55
|
+
**selecting**
|
|
52
56
|
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
};
|
|
58
|
-
```
|
|
57
|
+
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|
|
58
|
+
| --- | --- | --- | --- | --- |
|
|
59
|
+
| value | `[Dayjs, Dayjs?]` | 是 | - | 当前选择的值 |
|
|
60
|
+
| confirmed | `boolean` | 是 | - | 当前这次 selecting 是否已经进入确认完成态;常见交互过程中通常为 `false`。 |
|
|
59
61
|
|
|
60
|
-
|
|
62
|
+
事件处理示例:
|
|
61
63
|
```typescript
|
|
62
|
-
const handleSelecting = (value) => {
|
|
63
|
-
console.log('正在选择:', value);
|
|
64
|
+
const handleSelecting = (value, confirmed) => {
|
|
65
|
+
console.log('正在选择:', value, confirmed);
|
|
64
66
|
};
|
|
65
67
|
```
|
|
66
68
|
|
|
69
|
+
## 方法 (Methods)
|
|
70
|
+
| 方法名 | 说明 | 参数 | 返回值 |
|
|
71
|
+
| --- | --- | --- | --- |
|
|
72
|
+
| show | 主动展开日期选择面板。 | `-` | `void` |
|
|
73
|
+
| hide | 主动关闭日期选择面板。 | `-` | `void` |
|
|
74
|
+
| position | 重新计算日期选择面板的位置。 | `-` | `void` |
|
|
75
|
+
|
|
67
76
|
## 常见错误与正确用法 (Anti-Hallucination)
|
|
77
|
+
### 范围选择时 value 类型错误
|
|
68
78
|
> **错误用法**: `const date = ref('');
|
|
69
79
|
<Datepicker v-model="date" range />`
|
|
70
80
|
> **正确写法**: `const dateRange = ref<[string, string]>(['', '']);
|
|
71
81
|
<Datepicker v-model="dateRange" range />`
|
|
72
82
|
> **说明**: 当 range 为 true 时,value 必须是 [string, string] 数组
|
|
73
83
|
|
|
84
|
+
### type 值拼写错误
|
|
74
85
|
> **错误用法**: `<Datepicker type="dateTime" />`
|
|
75
86
|
> **正确写法**: `<Datepicker type="datetime" />`
|
|
76
87
|
> **说明**: type 值为小写 datetime,不是 dateTime
|
|
77
88
|
|
|
89
|
+
### disabledDate 函数返回值错误
|
|
78
90
|
> **错误用法**: `const disabledDate = (d) => { if (d.day() === 0) return '禁用'; }`
|
|
79
91
|
> **正确写法**: `const disabledDate = (d) => d.day() === 0;`
|
|
80
92
|
> **说明**: disabledDate 必须返回布尔值,true 表示禁用
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
# 描述输入 (Description)
|
|
2
|
+
|
|
3
|
+
面向资源描述、备注和说明信息的简化输入组件,适合需要统一长度和校验规则的描述类字段。
|
|
4
|
+
|
|
5
|
+
**关键词**: description, remark input, 描述输入, 备注填写, 说明文本
|
|
6
|
+
|
|
7
|
+
**使用场景**: 资源描述录入、备注信息填写、编辑页备注预览
|
|
8
|
+
|
|
9
|
+
## 导入语句
|
|
10
|
+
```typescript
|
|
11
|
+
import { Description } from '@ksyun-internal/versatile';
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
## 属性 (Props)
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| modelValue | `string | null` | `undefined` | 否 | 描述内容 | - | - |
|
|
18
|
+
|
|
19
|
+
## 事件 (Events)
|
|
20
|
+
| 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
|
|
21
|
+
| --- | --- | --- | --- | --- |
|
|
22
|
+
| update:modelValue | `@update:modelValue` | 描述内容变化时触发,可直接同步备注或说明字段。 | `value?: string | null` | - |
|
|
23
|
+
|
|
24
|
+
### 事件参数说明
|
|
25
|
+
**update:modelValue**
|
|
26
|
+
|
|
27
|
+
| 参数 | 类型 | 必填 | 默认值 | 说明 |
|
|
28
|
+
| --- | --- | --- | --- | --- |
|
|
29
|
+
| value | `string | null` | 否 | - | 当前备注或描述文本。 |
|
|
30
|
+
|
|
31
|
+
## 使用示例
|
|
32
|
+
### 实例备注录入
|
|
33
|
+
**场景**: 在创建或编辑资源时填写用途说明和备注信息。
|
|
34
|
+
|
|
35
|
+
使用 Description 统一承载资源备注或用途说明。
|
|
36
|
+
|
|
37
|
+
**使用的 API**: 属性: modelValue | 事件: update:modelValue
|
|
38
|
+
|
|
39
|
+
```vue
|
|
40
|
+
<script setup lang="ts">
|
|
41
|
+
import { ref } from 'vue';
|
|
42
|
+
import { Description } from '@ksyun-internal/versatile';
|
|
43
|
+
|
|
44
|
+
const remark = ref('用于支付链路的核心应用实例');
|
|
45
|
+
</script>
|
|
46
|
+
|
|
47
|
+
<template>
|
|
48
|
+
<Description v-model="remark" />
|
|
49
|
+
</template>
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
### 编辑资源备注
|
|
53
|
+
**场景**: 在编辑资源信息时实时预览备注字段内容。
|
|
54
|
+
|
|
55
|
+
在编辑表单中回填已有备注并持续同步到父级状态。
|
|
56
|
+
|
|
57
|
+
**使用的 API**: 属性: modelValue | 事件: update:modelValue
|
|
58
|
+
|
|
59
|
+
```vue
|
|
60
|
+
<script setup lang="ts">
|
|
61
|
+
import { ref } from 'vue';
|
|
62
|
+
import { Description } from '@ksyun-internal/versatile';
|
|
63
|
+
|
|
64
|
+
const remark = ref('部署于金融业务生产环境');
|
|
65
|
+
</script>
|
|
66
|
+
|
|
67
|
+
<template>
|
|
68
|
+
<Description v-model="remark" />
|
|
69
|
+
<div>预览:{{ remark }}</div>
|
|
70
|
+
</template>
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
## 相关组件
|
|
74
|
+
FormItemInput
|
|
75
|
+
|
|
@@ -12,12 +12,12 @@ import { Descriptions, DescriptionItem } from '@king-design/vue';
|
|
|
12
12
|
```
|
|
13
13
|
|
|
14
14
|
## 属性 (Props)
|
|
15
|
-
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 示例 |
|
|
16
|
-
| --- | --- | --- | --- | --- | --- |
|
|
17
|
-
| title | `string | number | VNode` | `undefined` | 否 | 描述列表的标题,显示在最顶部 | `<Descriptions title="用户信息"></Descriptions>` |
|
|
18
|
-
| vertical | `boolean` | `false` | 否 | 是否垂直排列(label 在上,content 在下) | `<Descriptions vertical></Descriptions>` |
|
|
19
|
-
| columns | `number` | `3` | 否 | 一行的 DescriptionItem 数量 | `<Descriptions :columns="2"></Descriptions>` |
|
|
20
|
-
| items | `DescriptionItemProps[]` | `[]` | 否 | 描述列表项内容数组,可替代使用 DescriptionItem 子组件 | `<Descriptions :items="items" />` |
|
|
15
|
+
| 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
|
|
16
|
+
| --- | --- | --- | --- | --- | --- | --- |
|
|
17
|
+
| title | `string | number | VNode` | `undefined` | 否 | 描述列表的标题,显示在最顶部 | - | `<Descriptions title="用户信息"></Descriptions>` |
|
|
18
|
+
| vertical | `boolean` | `false` | 否 | 是否垂直排列(label 在上,content 在下) | - | `<Descriptions vertical></Descriptions>` |
|
|
19
|
+
| columns | `number` | `3` | 否 | 一行的 DescriptionItem 数量 | - | `<Descriptions :columns="2"></Descriptions>` |
|
|
20
|
+
| items | `DescriptionItemProps[]` | `[]` | 否 | 描述列表项内容数组,可替代使用 DescriptionItem 子组件 | - | `<Descriptions :items="items" />` |
|
|
21
21
|
|
|
22
22
|
## 插槽 (Slots)
|
|
23
23
|
| 插槽名 | 说明 | 模板写法 | 示例 |
|
|
@@ -39,6 +39,7 @@ import { Descriptions, DescriptionItem } from '@king-design/vue';
|
|
|
39
39
|
- `undefined`: 自定义label
|
|
40
40
|
|
|
41
41
|
## 常见错误与正确用法 (Anti-Hallucination)
|
|
42
|
+
### DescriptionItem 未设置 label
|
|
42
43
|
> **错误用法**: `<Descriptions>
|
|
43
44
|
<DescriptionItem>张三</DescriptionItem>
|
|
44
45
|
</Descriptions>`
|
|
@@ -47,6 +48,7 @@ import { Descriptions, DescriptionItem } from '@king-design/vue';
|
|
|
47
48
|
</Descriptions>`
|
|
48
49
|
> **说明**: DescriptionItem 应该设置 label 属性来标识字段名称
|
|
49
50
|
|
|
51
|
+
### items 数组结构错误
|
|
50
52
|
> **错误用法**: `const items = ['姓名', '年龄'];`
|
|
51
53
|
> **正确写法**: `const items = [
|
|
52
54
|
{ label: '姓名', content: '张三' },
|
|
@@ -54,6 +56,7 @@ import { Descriptions, DescriptionItem } from '@king-design/vue';
|
|
|
54
56
|
];`
|
|
55
57
|
> **说明**: items 数组中的每个元素必须是包含 label 和 content 的对象
|
|
56
58
|
|
|
59
|
+
### columns 使用字符串而非数字
|
|
57
60
|
> **错误用法**: `<Descriptions columns="2">`
|
|
58
61
|
> **正确写法**: `<Descriptions :columns="2">`
|
|
59
62
|
> **说明**: columns 是数字类型,需要使用 v-bind (:columns) 语法传入数字
|