king-design-analyzer 2.2.0 → 2.2.1

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 (149) 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 +4 -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/protable.json +2 -0
  35. package/components/rate.json +1 -0
  36. package/components/scrollselect.json +140 -0
  37. package/components/select.json +63 -0
  38. package/components/skeleton.json +1 -0
  39. package/components/slider.json +12 -2
  40. package/components/spin.json +2 -1
  41. package/components/spinner.json +419 -429
  42. package/components/split.json +3 -0
  43. package/components/switch.json +4 -2
  44. package/components/table.json +6 -1
  45. package/components/tabs.json +2 -2
  46. package/components/tag.json +8 -5
  47. package/components/timeline.json +3 -1
  48. package/components/tip.json +20 -0
  49. package/components/tooltip.json +8 -0
  50. package/components/transfer.json +52 -5
  51. package/components/tree.json +22 -1
  52. package/components/treeselect.json +56 -0
  53. package/components/vdialog.json +1 -0
  54. package/components/vdrawer.json +4 -0
  55. package/dist/ast/index.d.mts +30 -1
  56. package/dist/ast/index.d.ts +30 -1
  57. package/dist/ast/index.js +3 -3
  58. package/dist/ast/index.mjs +1 -1
  59. package/dist/{chunk-BI5TIQID.mjs → chunk-4OTQAQ6J.mjs} +13 -2
  60. package/dist/{chunk-CJGGFVQJ.js → chunk-4WXOYU2N.js} +31 -8
  61. package/dist/chunk-6HOIRUQB.mjs +409 -0
  62. package/dist/{chunk-CR3GC4H3.js → chunk-DHLWNT53.js} +13 -2
  63. package/dist/{chunk-KMIDURUR.mjs → chunk-IPJJMPOO.mjs} +113 -19
  64. package/dist/{chunk-TA3SV4SP.js → chunk-JJ6AB4ZH.js} +2 -2
  65. package/dist/{chunk-SZYVGYKK.js → chunk-JNRGUR3O.js} +113 -19
  66. package/dist/{chunk-XGPHQHLR.mjs → chunk-LRTDTFFQ.mjs} +27 -4
  67. package/dist/{chunk-3LYQ5XFM.mjs → chunk-NZL6T22V.mjs} +1 -1
  68. package/dist/chunk-V5N65MRP.js +411 -0
  69. package/dist/full/index.d.mts +2 -0
  70. package/dist/full/index.d.ts +2 -0
  71. package/dist/full/index.js +6 -6
  72. package/dist/full/index.mjs +4 -4
  73. package/dist/index.js +13 -13
  74. package/dist/index.mjs +5 -5
  75. package/dist/metadata/index.d.mts +17 -2
  76. package/dist/metadata/index.d.ts +17 -2
  77. package/dist/runtime/index.d.mts +2 -0
  78. package/dist/runtime/index.d.ts +2 -0
  79. package/dist/runtime/index.js +4 -4
  80. package/dist/runtime/index.mjs +2 -2
  81. package/dist/static/index.js +5 -5
  82. package/dist/static/index.mjs +2 -2
  83. package/docs_for_llm/actions.doc.md +11 -1
  84. package/docs_for_llm/advancedset.doc.md +10 -1
  85. package/docs_for_llm/affix.doc.md +5 -0
  86. package/docs_for_llm/anchor.doc.md +155 -0
  87. package/docs_for_llm/anchorlink.doc.md +75 -0
  88. package/docs_for_llm/badge.doc.md +5 -0
  89. package/docs_for_llm/breadcrumb.doc.md +74 -1
  90. package/docs_for_llm/button.doc.md +57 -0
  91. package/docs_for_llm/buttonlink.doc.md +10 -1
  92. package/docs_for_llm/card.doc.md +50 -3
  93. package/docs_for_llm/cardcontent.doc.md +21 -0
  94. package/docs_for_llm/carousel.doc.md +71 -0
  95. package/docs_for_llm/cascader.doc.md +62 -0
  96. package/docs_for_llm/collapse.doc.md +138 -8
  97. package/docs_for_llm/configprovider.doc.md +77 -0
  98. package/docs_for_llm/copyrow.doc.md +10 -1
  99. package/docs_for_llm/datepicker.doc.md +19 -0
  100. package/docs_for_llm/descriptions.doc.md +113 -4
  101. package/docs_for_llm/diagram.doc.md +343 -0
  102. package/docs_for_llm/dialog.doc.md +49 -0
  103. package/docs_for_llm/divider.doc.md +5 -0
  104. package/docs_for_llm/drawer.doc.md +86 -0
  105. package/docs_for_llm/dropdown.doc.md +240 -3
  106. package/docs_for_llm/flex.doc.md +10 -1
  107. package/docs_for_llm/form.doc.md +163 -4
  108. package/docs_for_llm/formitemspinner.doc.md +1 -1
  109. package/docs_for_llm/grid.doc.md +71 -0
  110. package/docs_for_llm/header.doc.md +33 -4
  111. package/docs_for_llm/input.doc.md +109 -2
  112. package/docs_for_llm/layoutcontent.doc.md +37 -0
  113. package/docs_for_llm/layoutlistcontent.doc.md +82 -9
  114. package/docs_for_llm/layoutpermissioncontent.doc.md +10 -1
  115. package/docs_for_llm/layoutstandardlist.doc.md +10 -1
  116. package/docs_for_llm/lazymount.doc.md +10 -1
  117. package/docs_for_llm/lazyteleport.doc.md +10 -1
  118. package/docs_for_llm/menu.doc.md +125 -3
  119. package/docs_for_llm/message.doc.md +45 -0
  120. package/docs_for_llm/notification.doc.md +214 -0
  121. package/docs_for_llm/protable.doc.md +9 -0
  122. package/docs_for_llm/rate.doc.md +5 -0
  123. package/docs_for_llm/scrollselect.doc.md +90 -0
  124. package/docs_for_llm/select.doc.md +174 -0
  125. package/docs_for_llm/skeleton.doc.md +35 -0
  126. package/docs_for_llm/slider.doc.md +11 -1
  127. package/docs_for_llm/spin.doc.md +10 -1
  128. package/docs_for_llm/spinner.doc.md +1 -1
  129. package/docs_for_llm/split.doc.md +13 -0
  130. package/docs_for_llm/steps.doc.md +71 -0
  131. package/docs_for_llm/switch.doc.md +15 -2
  132. package/docs_for_llm/table.doc.md +199 -4
  133. package/docs_for_llm/tabs.doc.md +98 -2
  134. package/docs_for_llm/tag.doc.md +148 -5
  135. package/docs_for_llm/timeline.doc.md +80 -2
  136. package/docs_for_llm/timepicker.doc.md +19 -0
  137. package/docs_for_llm/tip.doc.md +30 -0
  138. package/docs_for_llm/tooltip.doc.md +46 -0
  139. package/docs_for_llm/tour.doc.md +78 -0
  140. package/docs_for_llm/transfer.doc.md +59 -4
  141. package/docs_for_llm/tree.doc.md +64 -1
  142. package/docs_for_llm/treeselect.doc.md +68 -0
  143. package/docs_for_llm/upload.doc.md +7 -0
  144. package/docs_for_llm/vdialog.doc.md +26 -1
  145. package/docs_for_llm/vdrawer.doc.md +33 -4
  146. package/docs_for_llm/virtuallist.doc.md +151 -0
  147. package/package.json +3 -3
  148. package/dist/chunk-D2SXGGTX.mjs +0 -162
  149. package/dist/chunk-EYKZY2F3.js +0 -164
@@ -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="[]" />`
@@ -19,24 +19,154 @@ import { Collapse, CollapseItem } from '@king-design/vue';
19
19
  | arrow | `"right" | "left"` | `"right"` | 否 | 指定箭头位置 | - | `<Collapse arrow="left"></Collapse>` |
20
20
  | noBorder | `boolean` | `false` | 否 | 是否展示无边框的简洁样式 | - | `<Collapse noBorder></Collapse>` |
21
21
 
22
- ## 插槽 (Slots)
23
- | 插槽名 | 说明 | 模板写法 | 示例 |
24
- | --- | --- | --- | --- |
25
- | title | 扩展标题 | `undefined` | - |
26
-
27
22
  ## 子组件 (Sub-Components)
28
23
  ### CollapseItem
29
24
  折叠面板项组件,用于定义每个可折叠的内容区域
30
25
 
26
+ #### 属性 (Props)
31
27
  | 属性名 | 类型 | 说明 | 示例 |
32
28
  | --- | --- | --- | --- |
33
29
  | value | `string` | 当前 CollapseItem 的取值,默认会使用 $ + 索引的组合 | `<CollapseItem value="1" title="面板标题">内容</CollapseItem>` |
34
30
  | title | `string | VNode` | 标题内容 | `<CollapseItem title="面板标题">内容</CollapseItem>` |
35
31
  | disabled | `boolean` | 是否禁用 | `<CollapseItem disabled title="禁用面板">内容</CollapseItem>` |
36
32
 
37
- **事件**:
38
- - `@show`: 展开时触发
39
- - `@hide`: 收起时触发
33
+ #### 事件 (Events)
34
+ | 事件名 | Vue事件名 | 说明 | 回调参数 | 示例 |
35
+ | --- | --- | --- | --- | --- |
36
+ | show | `@show` | 展开时触发 | `collapseItem: CollapseItem` | `<CollapseItem @show="handlePanelShow"></CollapseItem>` |
37
+ | hide | `@hide` | 收起时触发 | `collapseItem: CollapseItem` | `<CollapseItem @hide="handlePanelHide"></CollapseItem>` |
38
+
39
+ ##### CollapseItem 事件参数说明
40
+ **show**
41
+
42
+ | 参数 | 类型 | 必填 | 默认值 | 说明 |
43
+ | --- | --- | --- | --- | --- |
44
+ | collapseItem | `CollapseItem` | 是 | - | 当前折叠项实例 |
45
+
46
+ 事件处理示例:
47
+ ```typescript
48
+ const expandedPanels = ref<string[]>([]);
49
+
50
+ const handlePanelShow = (collapseItem) => {
51
+ const panelValue = String(collapseItem.value);
52
+ if (!expandedPanels.value.includes(panelValue)) {
53
+ expandedPanels.value.push(panelValue);
54
+ }
55
+ };
56
+ ```
57
+
58
+ **hide**
59
+
60
+ | 参数 | 类型 | 必填 | 默认值 | 说明 |
61
+ | --- | --- | --- | --- | --- |
62
+ | collapseItem | `CollapseItem` | 是 | - | 当前折叠项实例 |
63
+
64
+ 事件处理示例:
65
+ ```typescript
66
+ const expandedPanels = ref<string[]>([]);
67
+
68
+ const handlePanelHide = (collapseItem) => {
69
+ expandedPanels.value = expandedPanels.value.filter((item) => item !== String(collapseItem.value));
70
+ };
71
+ ```
72
+
73
+ #### 插槽 (Slots)
74
+ | 插槽名 | 说明 | 模板写法 | 示例 |
75
+ | --- | --- | --- | --- |
76
+ | title | 扩展标题 | `#title` | `<CollapseItem value="custom">
77
+ <template #title>
78
+ 自定义标题
79
+ </template>
80
+ 自定义内容
81
+ </CollapseItem>` |
82
+
83
+ ##### 插槽参数说明
84
+ **title**
85
+
86
+ - 参数结构: 无参数
87
+
88
+ #### 组合示例
89
+ ##### 监听展开收起
90
+ **场景**: 监听折叠面板的展开和收起事件
91
+
92
+ 监听面板的展开和收起事件
93
+
94
+ **命中的子组件 API**: 属性: value, title | 事件: show, hide
95
+
96
+ ```vue
97
+ <script setup lang="ts">
98
+ import { ref } from 'vue';
99
+ import { Collapse, CollapseItem, Message } from '@king-design/vue';
100
+
101
+ const activeKeys = ref([]);
102
+
103
+ const handleShow = () => {
104
+ Message.success('面板已展开');
105
+ };
106
+
107
+ const handleHide = () => {
108
+ Message.info('面板已收起');
109
+ };
110
+ </script>
111
+ <template>
112
+ <Collapse v-model="activeKeys">
113
+ <CollapseItem value="1" title="面板一" @show="handleShow" @hide="handleHide">
114
+ 内容一
115
+ </CollapseItem>
116
+ </Collapse>
117
+ </template>
118
+ ```
119
+
120
+ ##### 禁用面板
121
+ **场景**: 禁用某个折叠面板项
122
+
123
+ 禁用某个折叠项
124
+
125
+ **命中的子组件 API**: 属性: value, title, disabled
126
+
127
+ ```vue
128
+ <script setup lang="ts">
129
+ import { ref } from 'vue';
130
+ import { Collapse, CollapseItem } from '@king-design/vue';
131
+
132
+ const activeKeys = ref([]);
133
+ </script>
134
+ <template>
135
+ <Collapse v-model="activeKeys">
136
+ <CollapseItem value="1" title="可用面板">内容一</CollapseItem>
137
+ <CollapseItem value="2" title="禁用面板" disabled>内容二</CollapseItem>
138
+ </Collapse>
139
+ </template>
140
+ ```
141
+
142
+ ##### 基础用法
143
+ **场景**: 创建基本的折叠面板
144
+
145
+ 基本的折叠面板
146
+
147
+ **命中的子组件 API**: 属性: value, title
148
+
149
+ ```vue
150
+ <script setup lang="ts">
151
+ import { ref } from 'vue';
152
+ import { Collapse, CollapseItem } from '@king-design/vue';
153
+
154
+ const activeKeys = ref(['1']);
155
+ </script>
156
+ <template>
157
+ <Collapse v-model="activeKeys">
158
+ <CollapseItem value="1" title="面板一">
159
+ 这是面板一的内容
160
+ </CollapseItem>
161
+ <CollapseItem value="2" title="面板二">
162
+ 这是面板二的内容
163
+ </CollapseItem>
164
+ <CollapseItem value="3" title="面板三">
165
+ 这是面板三的内容
166
+ </CollapseItem>
167
+ </Collapse>
168
+ </template>
169
+ ```
40
170
 
41
171
  ## 常见错误与正确用法 (Anti-Hallucination)
42
172
  ### value 类型错误,使用字符串而非数组
@@ -0,0 +1,77 @@
1
+ # 全局配置提供器 (ConfigProvider)
2
+
3
+ 配置上下文提供器,用于向包裹区域内的组件统一注入类名前缀和波纹动画配置。适合在局部区域隔离样式命名空间或关闭交互波纹效果。
4
+
5
+ **关键词**: configprovider, 配置提供器, classNamePrefix, disableWave
6
+
7
+ **使用场景**: 局部样式前缀隔离、统一关闭波纹动画、子树级组件配置注入
8
+
9
+ ## 导入语句
10
+ ```typescript
11
+ import { ConfigProvider } from '@king-design/vue';
12
+ ```
13
+
14
+ ## 属性 (Props)
15
+ | 属性名 | 类型 | 默认值 | 必填 | 说明 | 标签 | 示例 |
16
+ | --- | --- | --- | --- | --- | --- | --- |
17
+ | value | `{ classNamePrefix?: string; disableWave?: boolean }` | `{}` | 否 | 传递给内部组件的配置对象 | - | `<ConfigProvider :value="{ classNamePrefix: 'my', disableWave: true }"></ConfigProvider>` |
18
+
19
+ ## 插槽 (Slots)
20
+ | 插槽名 | 说明 | 模板写法 | 示例 |
21
+ | --- | --- | --- | --- |
22
+ | default | 需要继承配置的子组件内容 | `#default` | `<ConfigProvider :value="config"><Button>按钮</Button></ConfigProvider>` |
23
+
24
+ ### 插槽参数说明
25
+ **default**
26
+
27
+ - 参数结构: 无参数
28
+
29
+ ## 使用示例
30
+ ### 自定义类名前缀
31
+ **场景**: 在微前端或局部主题隔离场景中定制组件类名前缀。
32
+
33
+ 为局部组件树设置独立类名前缀。
34
+
35
+ **使用的 API**: 属性: value | 插槽: default
36
+
37
+ ```vue
38
+ <script setup lang="ts">
39
+ import { ref } from 'vue';
40
+ import { Button, ButtonGroup, ConfigProvider } from '@king-design/vue';
41
+
42
+ const config = ref({ classNamePrefix: 'custom' });
43
+ </script>
44
+ <template>
45
+ <ConfigProvider :value="config">
46
+ <ButtonGroup>
47
+ <Button>默认按钮</Button>
48
+ <Button type="primary">主要按钮</Button>
49
+ </ButtonGroup>
50
+ </ConfigProvider>
51
+ </template>
52
+ ```
53
+
54
+ ### 关闭波纹效果
55
+ **场景**: 在需要弱化交互动画或统一交互体验时关闭波纹效果。
56
+
57
+ 统一禁用子组件的波纹动画效果。
58
+
59
+ **使用的 API**: 属性: value | 插槽: default
60
+
61
+ ```vue
62
+ <script setup lang="ts">
63
+ import { Button, ConfigProvider } from '@king-design/vue';
64
+ </script>
65
+ <template>
66
+ <ConfigProvider :value="{ disableWave: true }">
67
+ <div style="display: flex; gap: 8px;">
68
+ <Button>普通按钮</Button>
69
+ <Button type="primary">无波纹按钮</Button>
70
+ </div>
71
+ </ConfigProvider>
72
+ </template>
73
+ ```
74
+
75
+ ## 相关组件
76
+ Button, Notification
77
+
@@ -23,7 +23,16 @@ import { CopyRow } from '@ksyun-internal/versatile';
23
23
  ## 插槽 (Slots)
24
24
  | 插槽名 | 说明 | 模板写法 | 示例 |
25
25
  | --- | --- | --- | --- |
26
- | default | 自定义行内容 | `<CopyRow>...</CopyRow>` | - |
26
+ | default | 自定义行内容 | `<CopyRow>...</CopyRow>` | `<CopyRow>
27
+ <template <CopyRow>...</CopyRow>>
28
+ 自定义default内容
29
+ </template>
30
+ </CopyRow>` |
31
+
32
+ ### 插槽参数说明
33
+ **default**
34
+
35
+ - 参数结构: 无参数
27
36
 
28
37
  ## 使用示例
29
38
  ### 接口地址一键复制
@@ -73,6 +73,25 @@ const handleSelecting = (value, confirmed) => {
73
73
  | hide | 主动关闭日期选择面板。 | `-` | `void` |
74
74
  | position | 重新计算日期选择面板的位置。 | `-` | `void` |
75
75
 
76
+ ### 方法调用示例
77
+ **show**
78
+
79
+ ```typescript
80
+ datepickerRef.value?.show();
81
+ ```
82
+
83
+ **hide**
84
+
85
+ ```typescript
86
+ datepickerRef.value?.hide();
87
+ ```
88
+
89
+ **position**
90
+
91
+ ```typescript
92
+ datepickerRef.value?.position();
93
+ ```
94
+
76
95
  ## 常见错误与正确用法 (Anti-Hallucination)
77
96
  ### 范围选择时 value 类型错误
78
97
  > **错误用法**: `const date = ref('');