king-design-analyzer 2.2.0 → 2.2.2

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.
Files changed (154) hide show
  1. package/components/actions.json +8 -0
  2. package/components/advancedset.json +1 -0
  3. package/components/affix.json +1 -0
  4. package/components/anchor.json +220 -0
  5. package/components/anchorlink.json +111 -0
  6. package/components/badge.json +1 -0
  7. package/components/breadcrumb.json +2 -1
  8. package/components/button.json +1 -0
  9. package/components/buttonlink.json +1 -0
  10. package/components/card.json +6 -3
  11. package/components/cardcontent.json +5 -0
  12. package/components/cascader.json +56 -0
  13. package/components/collapse.json +335 -348
  14. package/components/configprovider.json +96 -0
  15. package/components/copyrow.json +1 -0
  16. package/components/descriptions.json +10 -3
  17. package/components/diagram.json +295 -0
  18. package/components/dialog.json +4 -0
  19. package/components/divider.json +1 -0
  20. package/components/drawer.json +32 -0
  21. package/components/dropdown.json +13 -4
  22. package/components/flex.json +1 -0
  23. package/components/form.json +12 -3
  24. package/components/header.json +4 -0
  25. package/components/input.json +8 -4
  26. package/components/layoutcontent.json +9 -0
  27. package/components/layoutlistcontent.json +9 -0
  28. package/components/layoutpermissioncontent.json +1 -0
  29. package/components/layoutstandardlist.json +1 -0
  30. package/components/lazymount.json +1 -0
  31. package/components/lazyteleport.json +1 -0
  32. package/components/menu.json +4 -3
  33. package/components/notification.json +351 -0
  34. package/components/popover.json +23 -0
  35. package/components/protable.json +2 -0
  36. package/components/rate.json +1 -0
  37. package/components/scrollselect.json +140 -0
  38. package/components/select.json +72 -0
  39. package/components/skeleton.json +1 -0
  40. package/components/slider.json +12 -2
  41. package/components/spin.json +2 -1
  42. package/components/spinner.json +422 -428
  43. package/components/split.json +3 -0
  44. package/components/switch.json +4 -2
  45. package/components/table.json +6 -1
  46. package/components/tabs.json +2 -2
  47. package/components/tag.json +8 -5
  48. package/components/timeline.json +3 -1
  49. package/components/tip.json +20 -0
  50. package/components/tooltip.json +8 -0
  51. package/components/tour.json +16 -0
  52. package/components/transfer.json +52 -5
  53. package/components/tree.json +22 -1
  54. package/components/treeselect.json +56 -0
  55. package/components/upload.json +16 -0
  56. package/components/vdialog.json +1 -0
  57. package/components/vdrawer.json +4 -0
  58. package/components/virtuallist.json +9 -0
  59. package/dist/ast/index.d.mts +30 -1
  60. package/dist/ast/index.d.ts +30 -1
  61. package/dist/ast/index.js +3 -3
  62. package/dist/ast/index.mjs +1 -1
  63. package/dist/{chunk-BI5TIQID.mjs → chunk-4OTQAQ6J.mjs} +13 -2
  64. package/dist/chunk-6HOIRUQB.mjs +409 -0
  65. package/dist/{chunk-XGPHQHLR.mjs → chunk-BSCASJTV.mjs} +27 -4
  66. package/dist/{chunk-CR3GC4H3.js → chunk-DHLWNT53.js} +13 -2
  67. package/dist/{chunk-CJGGFVQJ.js → chunk-HARQRI4F.js} +31 -8
  68. package/dist/{chunk-TA3SV4SP.js → chunk-JJ6AB4ZH.js} +2 -2
  69. package/dist/{chunk-3LYQ5XFM.mjs → chunk-NZL6T22V.mjs} +1 -1
  70. package/dist/chunk-V5N65MRP.js +411 -0
  71. package/dist/{chunk-SZYVGYKK.js → chunk-XPHDD6XR.js} +113 -35
  72. package/dist/{chunk-KMIDURUR.mjs → chunk-YRGYDK2I.mjs} +113 -35
  73. package/dist/full/index.d.mts +2 -0
  74. package/dist/full/index.d.ts +2 -0
  75. package/dist/full/index.js +6 -6
  76. package/dist/full/index.mjs +4 -4
  77. package/dist/index.js +13 -13
  78. package/dist/index.mjs +5 -5
  79. package/dist/metadata/index.d.mts +17 -2
  80. package/dist/metadata/index.d.ts +17 -2
  81. package/dist/runtime/index.d.mts +2 -0
  82. package/dist/runtime/index.d.ts +2 -0
  83. package/dist/runtime/index.js +4 -4
  84. package/dist/runtime/index.mjs +2 -2
  85. package/dist/static/index.js +5 -5
  86. package/dist/static/index.mjs +2 -2
  87. package/docs_for_llm/actions.doc.md +11 -1
  88. package/docs_for_llm/advancedset.doc.md +10 -1
  89. package/docs_for_llm/affix.doc.md +5 -0
  90. package/docs_for_llm/anchor.doc.md +155 -0
  91. package/docs_for_llm/anchorlink.doc.md +75 -0
  92. package/docs_for_llm/badge.doc.md +5 -0
  93. package/docs_for_llm/breadcrumb.doc.md +74 -1
  94. package/docs_for_llm/button.doc.md +57 -0
  95. package/docs_for_llm/buttonlink.doc.md +10 -1
  96. package/docs_for_llm/card.doc.md +50 -3
  97. package/docs_for_llm/cardcontent.doc.md +21 -0
  98. package/docs_for_llm/carousel.doc.md +71 -0
  99. package/docs_for_llm/cascader.doc.md +62 -0
  100. package/docs_for_llm/collapse.doc.md +138 -8
  101. package/docs_for_llm/configprovider.doc.md +77 -0
  102. package/docs_for_llm/copyrow.doc.md +10 -1
  103. package/docs_for_llm/datepicker.doc.md +19 -0
  104. package/docs_for_llm/descriptions.doc.md +113 -4
  105. package/docs_for_llm/diagram.doc.md +343 -0
  106. package/docs_for_llm/dialog.doc.md +49 -0
  107. package/docs_for_llm/divider.doc.md +5 -0
  108. package/docs_for_llm/drawer.doc.md +86 -0
  109. package/docs_for_llm/dropdown.doc.md +257 -3
  110. package/docs_for_llm/flex.doc.md +10 -1
  111. package/docs_for_llm/form.doc.md +163 -4
  112. package/docs_for_llm/formitemspinner.doc.md +1 -1
  113. package/docs_for_llm/grid.doc.md +71 -0
  114. package/docs_for_llm/header.doc.md +33 -4
  115. package/docs_for_llm/input.doc.md +109 -2
  116. package/docs_for_llm/layoutcontent.doc.md +37 -0
  117. package/docs_for_llm/layoutlistcontent.doc.md +82 -9
  118. package/docs_for_llm/layoutpermissioncontent.doc.md +10 -1
  119. package/docs_for_llm/layoutstandardlist.doc.md +10 -1
  120. package/docs_for_llm/lazymount.doc.md +10 -1
  121. package/docs_for_llm/lazyteleport.doc.md +10 -1
  122. package/docs_for_llm/menu.doc.md +125 -3
  123. package/docs_for_llm/message.doc.md +45 -0
  124. package/docs_for_llm/notification.doc.md +214 -0
  125. package/docs_for_llm/popover.doc.md +34 -0
  126. package/docs_for_llm/protable.doc.md +9 -0
  127. package/docs_for_llm/rate.doc.md +5 -0
  128. package/docs_for_llm/scrollselect.doc.md +90 -0
  129. package/docs_for_llm/select.doc.md +189 -0
  130. package/docs_for_llm/skeleton.doc.md +35 -0
  131. package/docs_for_llm/slider.doc.md +11 -1
  132. package/docs_for_llm/spin.doc.md +10 -1
  133. package/docs_for_llm/spinner.doc.md +1 -1
  134. package/docs_for_llm/split.doc.md +13 -0
  135. package/docs_for_llm/steps.doc.md +71 -0
  136. package/docs_for_llm/switch.doc.md +15 -2
  137. package/docs_for_llm/table.doc.md +199 -4
  138. package/docs_for_llm/tabs.doc.md +98 -2
  139. package/docs_for_llm/tag.doc.md +148 -5
  140. package/docs_for_llm/timeline.doc.md +80 -2
  141. package/docs_for_llm/timepicker.doc.md +19 -0
  142. package/docs_for_llm/tip.doc.md +30 -0
  143. package/docs_for_llm/tooltip.doc.md +46 -0
  144. package/docs_for_llm/tour.doc.md +102 -0
  145. package/docs_for_llm/transfer.doc.md +59 -4
  146. package/docs_for_llm/tree.doc.md +64 -1
  147. package/docs_for_llm/treeselect.doc.md +68 -0
  148. package/docs_for_llm/upload.doc.md +28 -0
  149. package/docs_for_llm/vdialog.doc.md +26 -1
  150. package/docs_for_llm/vdrawer.doc.md +33 -4
  151. package/docs_for_llm/virtuallist.doc.md +165 -0
  152. package/package.json +3 -3
  153. package/dist/chunk-D2SXGGTX.mjs +0 -162
  154. package/dist/chunk-EYKZY2F3.js +0 -164
@@ -0,0 +1,155 @@
1
+ # 锚点导航 (Anchor)
2
+
3
+ 锚点导航组件,用于监听页面滚动位置并高亮当前锚点。支持自定义滚动容器、偏移量、横向或纵向模式,通常与 AnchorLink 配合使用。
4
+
5
+ **关键词**: anchor, 锚点, 目录导航, 滚动定位, AnchorLink
6
+
7
+ **使用场景**: 长页面章节导航、文档目录定位、详情页内容分区跳转
8
+
9
+ ## 导入语句
10
+ ```typescript
11
+ import { Anchor, AnchorLink } from '@king-design/vue';
12
+ ```
13
+
14
+ ## 属性 (Props)
15
+ | 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
16
+ | --- | --- | --- | --- | --- | --- | --- |
17
+ | value | `string` | `undefined` | 否 | 当前激活的锚点 href,可用 v-model 双向绑定 | - | `<Anchor v-model="currentLink"></Anchor>` |
18
+ | offset | `number` | `0` | 否 | 滚动定位偏移量,适合页面存在固定头部时使用 | - | `<Anchor :offset="64"></Anchor>` |
19
+ | container | `string | HTMLElement` | `window` | 否 | 监听滚动的容器,可传选择器或 HTMLElement | - | `<Anchor container="#scroll-container"></Anchor>` |
20
+ | threshold | `number` | `0` | 否 | 激活锚点时的阈值范围 | - | `<Anchor :threshold="20"></Anchor>` |
21
+ | vertical | `boolean` | `true` | 否 | 是否使用纵向模式,默认开启;传 false 时为横向模式 | - | `<Anchor :vertical="false"></Anchor>` |
22
+ | size | `Sizes` | `"default"` | 否 | 导航尺寸 | - | `<Anchor size="small"></Anchor>` |
23
+ | duration | `number` | `300` | 否 | 点击锚点后的滚动动画时长,单位 ms | - | `<Anchor :duration="500"></Anchor>` |
24
+
25
+ ## 事件 (Events)
26
+ | 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
27
+ | --- | --- | --- | --- | --- |
28
+ | change | `@change` | 当前激活锚点变化时触发 | `href: string` | `<Anchor @change="handleChange"></Anchor>` |
29
+ | click | `@click` | 点击锚点链接时触发 | `e: MouseEvent, link: AnchorLinkProps` | `<Anchor @click="handleClick"></Anchor>` |
30
+
31
+ ### 事件参数说明
32
+ **change**
33
+
34
+ | 参数 | 类型 | 必填 | 默认值 | 说明 |
35
+ | --- | --- | --- | --- | --- |
36
+ | href | `string` | 是 | - | 当前激活锚点 href |
37
+
38
+ 事件处理示例:
39
+ ```typescript
40
+ const handleChange = (href: string) => {
41
+ console.log('当前锚点', href);
42
+ };
43
+ ```
44
+
45
+ **click**
46
+
47
+ | 参数 | 类型 | 必填 | 默认值 | 说明 |
48
+ | --- | --- | --- | --- | --- |
49
+ | e | `MouseEvent` | 是 | - | 原生鼠标事件 |
50
+ | link | `AnchorLinkProps` | 是 | - | 被点击的锚点配置 |
51
+
52
+ 事件处理示例:
53
+ ```typescript
54
+ const handleClick = (e: MouseEvent, link: { href?: string }) => {
55
+ console.log('点击了锚点', link.href);
56
+ };
57
+ ```
58
+
59
+ ## 插槽 (Slots)
60
+ | 插槽名 | 说明 | 模板写法 | 示例 |
61
+ | --- | --- | --- | --- |
62
+ | default | 锚点导航内容,通常放置一个或多个 AnchorLink | `#default` | `<Anchor>
63
+ <AnchorLink href="section1" title="Section 1" />
64
+ </Anchor>` |
65
+
66
+ ### 插槽参数说明
67
+ **default**
68
+
69
+ - 参数结构: 无参数
70
+
71
+ ## 方法 (Methods)
72
+ | 方法名 | 说明 | 参数 | 返回值 |
73
+ | --- | --- | --- | --- |
74
+ | getLinks | 获取当前 Anchor 中注册的所有 href | `-` | `string[]` |
75
+ | getTargetElement | 根据 href 查找对应的目标元素 | `href: string` | `HTMLElement | null` |
76
+
77
+ ### 方法参数说明
78
+ **getTargetElement**
79
+
80
+ | 参数 | 类型 | 必填 | 默认值 | 说明 |
81
+ | --- | --- | --- | --- | --- |
82
+ | href | `string` | 是 | - | 目标锚点 href |
83
+
84
+ 调用示例:
85
+ ```typescript
86
+ anchorRef.value?.getTargetElement('section2');
87
+ ```
88
+
89
+ ### 方法调用示例
90
+ **getLinks**
91
+
92
+ ```typescript
93
+ anchorRef.value?.getLinks();
94
+ ```
95
+
96
+ **getTargetElement**
97
+
98
+ ```typescript
99
+ anchorRef.value?.getTargetElement('section2');
100
+ ```
101
+
102
+ ## 使用示例
103
+ ### 基础用法
104
+ **场景**: 为详情页长内容区域提供目录导航。
105
+
106
+ 在滚动容器旁边展示纵向锚点导航。
107
+
108
+ **使用的 API**: 属性: value, container | 插槽: default
109
+
110
+ ```vue
111
+ <script setup lang="ts">
112
+ import { ref } from 'vue';
113
+ import { Anchor, AnchorLink } from '@king-design/vue';
114
+
115
+ const current = ref('section1');
116
+ </script>
117
+ <template>
118
+ <div style="display: flex; gap: 20px; align-items: flex-start;">
119
+ <div id="scroll-container" style="height: 240px; overflow-y: auto; width: 360px; border: 1px solid #eee; padding: 12px;">
120
+ <section id="section1" style="height: 180px;">第一部分</section>
121
+ <section id="section2" style="height: 180px;">第二部分</section>
122
+ <section id="section3" style="height: 180px;">第三部分</section>
123
+ </div>
124
+ <Anchor v-model="current" container="#scroll-container">
125
+ <AnchorLink href="section1" title="第一部分" />
126
+ <AnchorLink href="section2" title="第二部分" />
127
+ <AnchorLink href="section3" title="第三部分" />
128
+ </Anchor>
129
+ </div>
130
+ </template>
131
+ ```
132
+
133
+ ### 横向锚点
134
+ **场景**: 在页面头部展示横向章节切换导航。
135
+
136
+ 将 Anchor 作为横向导航栏使用。
137
+
138
+ **使用的 API**: 属性: vertical, offset | 插槽: default
139
+
140
+ ```vue
141
+ <script setup lang="ts">
142
+ import { Anchor, AnchorLink } from '@king-design/vue';
143
+ </script>
144
+ <template>
145
+ <Anchor :vertical="false" :offset="64">
146
+ <AnchorLink href="overview" title="概览" />
147
+ <AnchorLink href="spec" title="规格" />
148
+ <AnchorLink href="billing" title="计费" />
149
+ </Anchor>
150
+ </template>
151
+ ```
152
+
153
+ ## 相关组件
154
+ AnchorLink, Affix
155
+
@@ -0,0 +1,75 @@
1
+ # 锚点链接 (AnchorLink)
2
+
3
+ Anchor 的子链接组件,用于声明单个锚点项。支持标题、禁用态以及嵌套层级,通常作为 Anchor 的默认插槽子节点出现。
4
+
5
+ **关键词**: anchorlink, 锚点链接, 目录项, Anchor
6
+
7
+ **使用场景**: Anchor 子导航项、目录树层级导航
8
+
9
+ ## 导入语句
10
+ ```typescript
11
+ import { AnchorLink } from '@king-design/vue';
12
+ ```
13
+
14
+ ## 属性 (Props)
15
+ | 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
16
+ | --- | --- | --- | --- | --- | --- | --- |
17
+ | href | `string` | `undefined` | 否 | 目标元素的 id 或锚点标识 | - | `<AnchorLink href="section1" title="第一部分" />` |
18
+ | title | `string | VNode` | `undefined` | 否 | 链接标题内容 | - | `<AnchorLink href="billing" title="计费说明" />` |
19
+ | disabled | `boolean` | `false` | 否 | 是否禁用当前锚点链接 | - | `<AnchorLink href="advanced" title="高级设置" disabled />` |
20
+
21
+ ## 插槽 (Slots)
22
+ | 插槽名 | 说明 | 模板写法 | 示例 |
23
+ | --- | --- | --- | --- |
24
+ | default | 自定义链接内容;未设置 title 时可直接通过默认插槽传入文字或节点 | `#default` | `<AnchorLink href="section2">第二部分</AnchorLink>` |
25
+
26
+ ### 插槽参数说明
27
+ **default**
28
+
29
+ - 参数结构: 无参数
30
+
31
+ ## 使用示例
32
+ ### 基础链接
33
+ **场景**: 为章节导航添加单个可点击锚点项。
34
+
35
+ 在 Anchor 中声明单个锚点链接。
36
+
37
+ **使用的 API**: 属性: href, title | 插槽: default
38
+
39
+ ```vue
40
+ <script setup lang="ts">
41
+ import { Anchor, AnchorLink } from '@king-design/vue';
42
+ </script>
43
+ <template>
44
+ <Anchor>
45
+ <AnchorLink href="section1" title="第一部分" />
46
+ <AnchorLink href="section2">第二部分</AnchorLink>
47
+ </Anchor>
48
+ </template>
49
+ ```
50
+
51
+ ### 嵌套链接
52
+ **场景**: 构建多级目录结构的页面导航。
53
+
54
+ 在纵向 Anchor 中构建层级导航。
55
+
56
+ **使用的 API**: 属性: href, title | 插槽: default
57
+
58
+ ```vue
59
+ <script setup lang="ts">
60
+ import { Anchor, AnchorLink } from '@king-design/vue';
61
+ </script>
62
+ <template>
63
+ <Anchor>
64
+ <AnchorLink href="overview" title="概览">
65
+ <AnchorLink href="overview-base" title="基础信息" />
66
+ <AnchorLink href="overview-network" title="网络配置" />
67
+ </AnchorLink>
68
+ <AnchorLink href="billing" title="计费" />
69
+ </Anchor>
70
+ </template>
71
+ ```
72
+
73
+ ## 相关组件
74
+ Anchor
75
+
@@ -23,6 +23,11 @@ import { Badge } from '@king-design/vue';
23
23
  | --- | --- | --- | --- |
24
24
  | default | 徽标包裹的元素 | `#default` | `<Badge><Button>Button</Button></Badge>` |
25
25
 
26
+ ### 插槽参数说明
27
+ **default**
28
+
29
+ - 参数结构: 无参数
30
+
26
31
  ## 常见错误与正确用法 (Anti-Hallucination)
27
32
  ### 数字作为字符串传入
28
33
  > **错误用法**: `<Badge text="10" :max="9">`
@@ -19,16 +19,89 @@ import { Breadcrumb, BreadcrumbItem } from '@king-design/vue';
19
19
  ## 插槽 (Slots)
20
20
  | 插槽名 | 说明 | 模板写法 | 示例 |
21
21
  | --- | --- | --- | --- |
22
- | separator | 指定分隔符 | `undefined` | - |
22
+ | separator | 指定分隔符 | `#separator` | `<Breadcrumb>
23
+ <template #separator>
24
+ 自定义separator内容
25
+ </template>
26
+ </Breadcrumb>` |
27
+
28
+ ### 插槽参数说明
29
+ **separator**
30
+
31
+ - 参数结构: 无参数
23
32
 
24
33
  ## 子组件 (Sub-Components)
25
34
  ### BreadcrumbItem
26
35
  面包屑项组件,用于定义导航路径中的每一项
27
36
 
37
+ #### 属性 (Props)
28
38
  | 属性名 | 类型 | 说明 | 示例 |
29
39
  | --- | --- | --- | --- |
30
40
  | to | `string | object` | 指定超链接地址,支持字符串路径或 Vue Router 路由对象 | `<BreadcrumbItem to="/products">产品中心</BreadcrumbItem>` |
31
41
 
42
+ #### 组合示例
43
+ ##### 带链接的面包屑
44
+ **场景**: 创建可点击跳转的面包屑导航
45
+
46
+ 点击可跳转的面包屑项
47
+
48
+ **命中的子组件 API**: 属性: to
49
+
50
+ ```vue
51
+ <script setup lang="ts">
52
+ import { Breadcrumb, BreadcrumbItem } from '@king-design/vue';
53
+ </script>
54
+ <template>
55
+ <Breadcrumb>
56
+ <BreadcrumbItem to="/">首页</BreadcrumbItem>
57
+ <BreadcrumbItem to="/products">产品中心</BreadcrumbItem>
58
+ <BreadcrumbItem>当前页面</BreadcrumbItem>
59
+ </Breadcrumb>
60
+ </template>
61
+ ```
62
+
63
+ ##### 配合 Vue Router
64
+ **场景**: 配合 Vue Router 使用路由对象导航
65
+
66
+ 使用路由对象进行导航
67
+
68
+ **命中的子组件 API**: 属性: to
69
+
70
+ ```vue
71
+ <script setup lang="ts">
72
+ import { Breadcrumb, BreadcrumbItem } from '@king-design/vue';
73
+ </script>
74
+ <template>
75
+ <Breadcrumb>
76
+ <BreadcrumbItem :to="{name: 'home'}">首页</BreadcrumbItem>
77
+ <BreadcrumbItem :to="{path: '/products'}">产品中心</BreadcrumbItem>
78
+ <BreadcrumbItem :to="{path: '/products/1', query: {id: 1}}">产品详情</BreadcrumbItem>
79
+ </Breadcrumb>
80
+ </template>
81
+ ```
82
+
83
+ ##### 带图标的首页
84
+ **场景**: 使用图标表示首页
85
+
86
+ 首页项使用图标代替文字
87
+
88
+ **命中的子组件 API**: 属性: to
89
+
90
+ ```vue
91
+ <script setup lang="ts">
92
+ import { Breadcrumb, BreadcrumbItem, Icon } from '@king-design/vue';
93
+ </script>
94
+ <template>
95
+ <Breadcrumb>
96
+ <BreadcrumbItem to="/">
97
+ <Icon class="k-icon-home" />
98
+ </BreadcrumbItem>
99
+ <BreadcrumbItem to="/products">产品中心</BreadcrumbItem>
100
+ <BreadcrumbItem>产品详情</BreadcrumbItem>
101
+ </Breadcrumb>
102
+ </template>
103
+ ```
104
+
32
105
  ## 常见错误与正确用法 (Anti-Hallucination)
33
106
  ### 最后一项不应该有链接
34
107
  > **错误用法**: `<Breadcrumb>
@@ -47,6 +47,11 @@ import { Button, ButtonGroup } from '@king-design/vue';
47
47
  | --- | --- | --- | --- |
48
48
  | default | 按钮内容 | `#default` | `<Button>按钮文字</Button>` |
49
49
 
50
+ ### 插槽参数说明
51
+ **default**
52
+
53
+ - 参数结构: 无参数
54
+
50
55
  ## 方法 (Methods)
51
56
  | 方法名 | 说明 | 参数 | 返回值 |
52
57
  | --- | --- | --- | --- |
@@ -55,10 +60,37 @@ import { Button, ButtonGroup } from '@king-design/vue';
55
60
  | disable | 禁用按钮 | `-` | `void` |
56
61
  | enable | 启用按钮 | `-` | `void` |
57
62
 
63
+ ### 方法调用示例
64
+ **showLoading**
65
+
66
+ ```typescript
67
+ const buttonRef = ref<InstanceType<typeof Button>>();
68
+ buttonRef.value?.showLoading();</InstanceType>
69
+ ```
70
+
71
+ **hideLoading**
72
+
73
+ ```typescript
74
+ buttonRef.value?.hideLoading();
75
+ ```
76
+
77
+ **disable**
78
+
79
+ ```typescript
80
+ buttonRef.value?.disable();
81
+ ```
82
+
83
+ **enable**
84
+
85
+ ```typescript
86
+ buttonRef.value?.enable();
87
+ ```
88
+
58
89
  ## 子组件 (Sub-Components)
59
90
  ### ButtonGroup
60
91
  按钮组容器,可实现按钮组合、单选组、复选组等功能
61
92
 
93
+ #### 属性 (Props)
62
94
  | 属性名 | 类型 | 说明 | 示例 |
63
95
  | --- | --- | --- | --- |
64
96
  | vertical | `boolean` | 是否垂直排列按钮组 | `<ButtonGroup vertical>
@@ -78,6 +110,31 @@ import { Button, ButtonGroup } from '@king-design/vue';
78
110
  </ButtonGroup>` |
79
111
  | btnWidth | `number | string` | 指定按钮组每个按钮的固定宽度 | `<ButtonGroup btnWidth="100px"></ButtonGroup>` |
80
112
 
113
+ #### 组合示例
114
+ ##### 单选按钮组
115
+ **场景**: 创建一个城市选择的单选按钮组,支持双向绑定
116
+
117
+ 使用ButtonGroup实现单选功能
118
+
119
+ **命中的子组件 API**: 属性: checkType
120
+
121
+ ```vue
122
+ <script setup lang="ts">
123
+ import { ref } from 'vue';
124
+ import { Button, ButtonGroup } from '@king-design/vue';
125
+
126
+ const selected = ref('beijing');
127
+ </script>
128
+ <template>
129
+ <ButtonGroup checkType="radio" v-model="selected">
130
+ <Button value="beijing">北京</Button>
131
+ <Button value="shanghai">上海</Button>
132
+ <Button value="guangzhou">广州</Button>
133
+ </ButtonGroup>
134
+ <p>当前选中: {{ selected }}</p>
135
+ </template>
136
+ ```
137
+
81
138
  ## 常见错误与正确用法 (Anti-Hallucination)
82
139
  ### type 属性值拼写错误
83
140
  > **错误用法**: `<Button type="primay">`
@@ -14,7 +14,16 @@ import { ButtonLink } from '@ksyun-internal/versatile';
14
14
  ## 插槽 (Slots)
15
15
  | 插槽名 | 说明 | 模板写法 | 示例 |
16
16
  | --- | --- | --- | --- |
17
- | default | 按钮内容 | `<ButtonLink>...</ButtonLink>` | - |
17
+ | default | 按钮内容 | `<ButtonLink>...</ButtonLink>` | `<ButtonLink>
18
+ <template <ButtonLink>...</ButtonLink>>
19
+ 自定义default内容
20
+ </template>
21
+ </ButtonLink>` |
22
+
23
+ ### 插槽参数说明
24
+ **default**
25
+
26
+ - 参数结构: 无参数
18
27
 
19
28
  ## 使用示例
20
29
  ### 详情页中的文档跳转入口
@@ -21,19 +21,66 @@ import { Card, CardColumn } from '@king-design/vue';
21
21
  ## 插槽 (Slots)
22
22
  | 插槽名 | 说明 | 模板写法 | 示例 |
23
23
  | --- | --- | --- | --- |
24
- | header | 扩展整个头部内容 | `undefined` | - |
25
- | title | 扩展头部标题内容 | `undefined` | - |
26
- | extra | 扩展头部附加内容 | `undefined` | - |
24
+ | header | 扩展整个头部内容 | `#header` | `<Card>
25
+ <template #header>头部内容</template>
26
+ </Card>` |
27
+ | title | 扩展头部标题内容 | `#title` | `<Card>
28
+ <template #title>自定义标题</template>
29
+ </Card>` |
30
+ | extra | 扩展头部附加内容 | `#extra` | `<Card>
31
+ <template #extra>
32
+ 自定义extra内容
33
+ </template>
34
+ </Card>` |
35
+
36
+ ### 插槽参数说明
37
+ **header**
38
+
39
+ - 参数结构: 无参数
40
+
41
+ **title**
42
+
43
+ - 参数结构: 无参数
44
+
45
+ **extra**
46
+
47
+ - 参数结构: 无参数
27
48
 
28
49
  ## 子组件 (Sub-Components)
29
50
  ### CardColumn
30
51
  卡片列组件,用于实现卡片内的多列布局
31
52
 
53
+ #### 属性 (Props)
32
54
  | 属性名 | 类型 | 说明 | 示例 |
33
55
  | --- | --- | --- | --- |
34
56
  | width | `string` | 列宽,必须带单位 | `<CardColumn width="100px">内容</CardColumn>` |
35
57
  | center | `boolean` | 该列内容是否居中 | `<CardColumn center>居中内容</CardColumn>` |
36
58
 
59
+ #### 组合示例
60
+ ##### 多列布局
61
+ **场景**: 创建带有头像和信息的多列卡片
62
+
63
+ 使用 CardColumn 实现多列布局
64
+
65
+ **命中的子组件 API**: 属性: width, center
66
+
67
+ ```vue
68
+ <script setup lang="ts">
69
+ import { Card, CardColumn } from '@king-design/vue';
70
+ </script>
71
+ <template>
72
+ <Card title="用户信息">
73
+ <CardColumn width="100px" center>
74
+ <img src="avatar.png" style="width: 80px; height: 80px; border-radius: 50%;" />
75
+ </CardColumn>
76
+ <CardColumn>
77
+ <h4>用户名称</h4>
78
+ <p>这是用户的详细描述信息</p>
79
+ </CardColumn>
80
+ </Card>
81
+ </template>
82
+ ```
83
+
37
84
  ## 常见错误与正确用法 (Anti-Hallucination)
38
85
  ### 使用不存在的 type 值
39
86
  > **错误用法**: `<Card type="bordered">内容</Card>`
@@ -30,3 +30,24 @@ import { CardContent } from '@ksyun-internal/versatile';
30
30
  | prepend | 扩展卡片操作栏上面部分内容 | `<template #prepend>...</template>` | `<CardContent><template #prepend><Alert>提示信息</Alert></template></CardContent>` |
31
31
  | extra | 扩展头部附加内容 | `<template #extra>...</template>` | `<CardContent title="标题"><template #extra><Link>查看更多</Link></template></CardContent>` |
32
32
 
33
+ ### 插槽参数说明
34
+ **default**
35
+
36
+ - 参数结构: 无参数
37
+
38
+ **opLeft**
39
+
40
+ - 参数结构: 无参数
41
+
42
+ **opRight**
43
+
44
+ - 参数结构: 无参数
45
+
46
+ **prepend**
47
+
48
+ - 参数结构: 无参数
49
+
50
+ **extra**
51
+
52
+ - 参数结构: 无参数
53
+
@@ -24,10 +24,81 @@ import { Carousel, CarouselItem } from '@king-design/vue';
24
24
  ### CarouselItem
25
25
  走马灯的内容项
26
26
 
27
+ #### 属性 (Props)
27
28
  | 属性名 | 类型 | 说明 | 示例 |
28
29
  | --- | --- | --- | --- |
29
30
  | value | `string` | 定义该项的唯一值,若不设置默认为索引 "$0", "$1"... | `<CarouselItem value="item1"></CarouselItem>` |
30
31
 
32
+ #### 组合示例
33
+ ##### 基础用法
34
+ **场景**: 基本的轮播展示
35
+
36
+ 基本的走马灯效果
37
+
38
+ ```vue
39
+ <script setup lang="ts">
40
+ import { Carousel, CarouselItem } from '@king-design/vue';
41
+ </script>
42
+ <template>
43
+ <Carousel style="height: 200px;">
44
+ <CarouselItem>
45
+ <div class="demo-item">1</div>
46
+ </CarouselItem>
47
+ <CarouselItem>
48
+ <div class="demo-item">2</div>
49
+ </CarouselItem>
50
+ <CarouselItem>
51
+ <div class="demo-item">3</div>
52
+ </CarouselItem>
53
+ </Carousel>
54
+ </template>
55
+ <style>
56
+ .demo-item {
57
+ height: 100%;
58
+ background: #36cfc9;
59
+ display: flex;
60
+ align-items: center;
61
+ justify-content: center;
62
+ color: #fff;
63
+ font-size: 20px;
64
+ }
65
+ </style>
66
+ ```
67
+
68
+ ##### 自动轮播
69
+ **场景**: 首页 Banner 自动轮播
70
+
71
+ 设置 autoplay 属性自动播放
72
+
73
+ ```vue
74
+ <script setup lang="ts">
75
+ import { Carousel, CarouselItem } from '@king-design/vue';
76
+ </script>
77
+ <template>
78
+ <Carousel :autoplay="3000" style="height: 200px;">
79
+ <CarouselItem>Page 1</CarouselItem>
80
+ <CarouselItem>Page 2</CarouselItem>
81
+ </Carousel>
82
+ </template>
83
+ ```
84
+
85
+ ##### 淡入淡出
86
+ **场景**: 使用淡入淡出效果的轮播
87
+
88
+ 使用 effect="fade" 切换效果
89
+
90
+ ```vue
91
+ <script setup lang="ts">
92
+ import { Carousel, CarouselItem } from '@king-design/vue';
93
+ </script>
94
+ <template>
95
+ <Carousel effect="fade" style="height: 200px;">
96
+ <CarouselItem>Page 1</CarouselItem>
97
+ <CarouselItem>Page 2</CarouselItem>
98
+ </Carousel>
99
+ </template>
100
+ ```
101
+
31
102
  ## 常见错误与正确用法 (Anti-Hallucination)
32
103
  ### 未设置 Carousel 高度
33
104
  > **错误用法**: `<Carousel>...</Carousel>`
@@ -56,6 +56,49 @@ import { Cascader } from '@king-design/vue';
56
56
  | --- | --- | --- | --- | --- |
57
57
  | value | `any` | 是 | - | 当前选中的值 |
58
58
 
59
+ ## 插槽 (Slots)
60
+ | 插槽名 | 说明 | 模板写法 | 示例 |
61
+ | --- | --- | --- | --- |
62
+ | value | 自定义单选模式下的已选路径展示内容 | `#value="[value, label]"` | `<Cascader v-model="selectedCity" :data="options">
63
+ <template #value="[value, label]">
64
+ <span>{{ label }} ({{ value.join(' / ') }})</span>
65
+ </template>
66
+ </Cascader>` |
67
+ | values | 自定义多选模式下的已选路径展示内容 | `#values="[values, labels]"` | `<Cascader v-model="selectedCities" :data="options" multiple>
68
+ <template #values="[values, labels]">
69
+ <span>已选 {{ labels.length }} 条路径</span>
70
+ </template>
71
+ </Cascader>` |
72
+ | prefix | 扩展选择框前缀内容 | `#prefix` | `<Cascader :data="options">
73
+ <template #prefix>
74
+ <span class="k-icon-location"></span>
75
+ </template>
76
+ </Cascader>` |
77
+ | suffix | 扩展选择框后缀内容 | `#suffix` | `<Cascader :data="options">
78
+ <template #suffix>
79
+ <span>路径</span>
80
+ </template>
81
+ </Cascader>` |
82
+
83
+ ### 插槽参数说明
84
+ **value**
85
+
86
+ - 参数结构: #value="[value, label]"
87
+ - 参数列表: `value: V[]`、`label: string`
88
+
89
+ **values**
90
+
91
+ - 参数结构: #values="[values, labels]"
92
+ - 参数列表: `values: V[][]`、`labels: string[]`
93
+
94
+ **prefix**
95
+
96
+ - 参数结构: 无参数
97
+
98
+ **suffix**
99
+
100
+ - 参数结构: 无参数
101
+
59
102
  ## 方法 (Methods)
60
103
  | 方法名 | 说明 | 参数 | 返回值 |
61
104
  | --- | --- | --- | --- |
@@ -63,6 +106,25 @@ import { Cascader } from '@king-design/vue';
63
106
  | hide | 主动关闭级联选择面板。 | `-` | `void` |
64
107
  | position | 重新计算级联选择面板的位置。 | `-` | `void` |
65
108
 
109
+ ### 方法调用示例
110
+ **show**
111
+
112
+ ```typescript
113
+ cascaderRef.value?.show();
114
+ ```
115
+
116
+ **hide**
117
+
118
+ ```typescript
119
+ cascaderRef.value?.hide();
120
+ ```
121
+
122
+ **position**
123
+
124
+ ```typescript
125
+ cascaderRef.value?.position();
126
+ ```
127
+
66
128
  ## 常见错误与正确用法 (Anti-Hallucination)
67
129
  ### 数据未加载时显示空白
68
130
  > **错误用法**: `<Cascader :data="[]" />`