@fox-js/phone-skills 4.0.1-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.
Files changed (98) hide show
  1. package/README.md +30 -0
  2. package/foxui/SKILL.md +442 -0
  3. package/foxui/references/fox-action-sheet/doc.md +74 -0
  4. package/foxui/references/fox-actionsheet-item/doc.md +499 -0
  5. package/foxui/references/fox-animate/doc.md +66 -0
  6. package/foxui/references/fox-audio/doc.md +76 -0
  7. package/foxui/references/fox-avatar/doc.md +70 -0
  8. package/foxui/references/fox-back-top/doc.md +69 -0
  9. package/foxui/references/fox-badge/doc.md +72 -0
  10. package/foxui/references/fox-barrage/doc.md +116 -0
  11. package/foxui/references/fox-button/doc.md +203 -0
  12. package/foxui/references/fox-calendar/doc.md +346 -0
  13. package/foxui/references/fox-calendar-item/doc.md +331 -0
  14. package/foxui/references/fox-cascader/doc.md +78 -0
  15. package/foxui/references/fox-cascader-item/doc.md +710 -0
  16. package/foxui/references/fox-cell/doc.md +74 -0
  17. package/foxui/references/fox-checkbox-item/doc.md +387 -0
  18. package/foxui/references/fox-circle-progress/doc.md +65 -0
  19. package/foxui/references/fox-collapse/doc.md +71 -0
  20. package/foxui/references/fox-count-down/doc.md +78 -0
  21. package/foxui/references/fox-count-up/doc.md +178 -0
  22. package/foxui/references/fox-date-item/doc.md +437 -0
  23. package/foxui/references/fox-date-picker/doc.md +438 -0
  24. package/foxui/references/fox-dialog/doc.md +242 -0
  25. package/foxui/references/fox-divider/doc.md +149 -0
  26. package/foxui/references/fox-domain-provider/doc.md +93 -0
  27. package/foxui/references/fox-drag/doc.md +64 -0
  28. package/foxui/references/fox-dropdown/doc.md +138 -0
  29. package/foxui/references/fox-elevator/doc.md +66 -0
  30. package/foxui/references/fox-ellipsis/doc.md +69 -0
  31. package/foxui/references/fox-empty/doc.md +67 -0
  32. package/foxui/references/fox-fixed-nav/doc.md +72 -0
  33. package/foxui/references/fox-floating-button/doc.md +142 -0
  34. package/foxui/references/fox-grid/doc.md +69 -0
  35. package/foxui/references/fox-group/doc.md +295 -0
  36. package/foxui/references/fox-icon/doc.md +65 -0
  37. package/foxui/references/fox-image/doc.md +75 -0
  38. package/foxui/references/fox-image-preview/doc.md +79 -0
  39. package/foxui/references/fox-indicator/doc.md +70 -0
  40. package/foxui/references/fox-infinite-loading/doc.md +74 -0
  41. package/foxui/references/fox-input-item/doc.md +210 -0
  42. package/foxui/references/fox-input-number/doc.md +199 -0
  43. package/foxui/references/fox-input-number-item/doc.md +213 -0
  44. package/foxui/references/fox-item/doc.md +207 -0
  45. package/foxui/references/fox-layout/doc.md +273 -0
  46. package/foxui/references/fox-link-item/doc.md +158 -0
  47. package/foxui/references/fox-list/doc.md +71 -0
  48. package/foxui/references/fox-mapping/doc.md +251 -0
  49. package/foxui/references/fox-menu/doc.md +425 -0
  50. package/foxui/references/fox-message-box/doc.md +200 -0
  51. package/foxui/references/fox-money-item/doc.md +174 -0
  52. package/foxui/references/fox-more-button/doc.md +208 -0
  53. package/foxui/references/fox-navbar/doc.md +75 -0
  54. package/foxui/references/fox-notice-bar/doc.md +71 -0
  55. package/foxui/references/fox-notify/doc.md +72 -0
  56. package/foxui/references/fox-number-keyboard/doc.md +77 -0
  57. package/foxui/references/fox-over-lay/doc.md +70 -0
  58. package/foxui/references/fox-page/doc.md +76 -0
  59. package/foxui/references/fox-pagination/doc.md +73 -0
  60. package/foxui/references/fox-picker/doc.md +668 -0
  61. package/foxui/references/fox-picker-item/doc.md +389 -0
  62. package/foxui/references/fox-popover/doc.md +70 -0
  63. package/foxui/references/fox-popover-dialog/doc.md +113 -0
  64. package/foxui/references/fox-popup/doc.md +88 -0
  65. package/foxui/references/fox-price/doc.md +67 -0
  66. package/foxui/references/fox-progress/doc.md +74 -0
  67. package/foxui/references/fox-pull-refresh/doc.md +77 -0
  68. package/foxui/references/fox-radio-item/doc.md +384 -0
  69. package/foxui/references/fox-range/doc.md +65 -0
  70. package/foxui/references/fox-rate/doc.md +141 -0
  71. package/foxui/references/fox-rate-item/doc.md +137 -0
  72. package/foxui/references/fox-rolling-provider/doc.md +87 -0
  73. package/foxui/references/fox-search-bar/doc.md +91 -0
  74. package/foxui/references/fox-short-password/doc.md +78 -0
  75. package/foxui/references/fox-side-nav-bar/doc.md +68 -0
  76. package/foxui/references/fox-signature/doc.md +202 -0
  77. package/foxui/references/fox-skeleton/doc.md +73 -0
  78. package/foxui/references/fox-steps/doc.md +162 -0
  79. package/foxui/references/fox-steps-bar/doc.md +610 -0
  80. package/foxui/references/fox-sticky/doc.md +68 -0
  81. package/foxui/references/fox-swipe/doc.md +176 -0
  82. package/foxui/references/fox-swiper/doc.md +254 -0
  83. package/foxui/references/fox-switch/doc.md +162 -0
  84. package/foxui/references/fox-switch-item/doc.md +190 -0
  85. package/foxui/references/fox-tabbar/doc.md +63 -0
  86. package/foxui/references/fox-table/doc.md +640 -0
  87. package/foxui/references/fox-tabs/doc.md +67 -0
  88. package/foxui/references/fox-tabs-bar/doc.md +533 -0
  89. package/foxui/references/fox-tag/doc.md +213 -0
  90. package/foxui/references/fox-text/doc.md +84 -0
  91. package/foxui/references/fox-textarea-item/doc.md +106 -0
  92. package/foxui/references/fox-toast/doc.md +149 -0
  93. package/foxui/references/fox-tour/doc.md +89 -0
  94. package/foxui/references/fox-trend-arrow/doc.md +72 -0
  95. package/foxui/references/fox-uploader/doc.md +96 -0
  96. package/foxui/references/fox-video/doc.md +245 -0
  97. package/foxui/references/fox-water-mark/doc.md +81 -0
  98. package/package.json +21 -0
@@ -0,0 +1,74 @@
1
+ <!--
2
+ * @Author: 江成
3
+ * @Date: 2026-04-27 00:37:28
4
+ * @LastEditors: 江成
5
+ * @LastEditTime: 2026-05-12 22:33:21
6
+ -->
7
+ ---
8
+ title: Cell 组件使用规范
9
+ impact: HIGH
10
+ type: capability
11
+ description: 展示列表
12
+ tags: [foxui, fox-cell, FoxCell]
13
+ version: "4.0.0"
14
+ author: jiangcheng
15
+ related: ["fox-js","fox-cell-group","fox-switch","fox-icon"]
16
+ ---
17
+
18
+ # Cell 组件使用规范
19
+
20
+ ## 1. 核心职责 (Core Responsibility)
21
+ Cell 是 foxui 中用于 **展示列表** 的标准组件。
22
+ - **基于**: NutUI `nut-cell` 进行了二次封装 (若为纯自研组件则填 "自定义开发")
23
+ - **核心增强**: 基于 NutUI 组件二次封装、支持 v-model 双向绑定、支持插槽扩展自定义内容、支持主题定制
24
+ - **适用场景**: 展示列表
25
+
26
+ > 💡 **关键原则**: 在所有 展示列表 中,**必须**优先使用此组件,禁止直接使用原生 NutUI 组件。
27
+
28
+ ---
29
+
30
+ ## 2. 关键 API 说明 (Key API)
31
+
32
+ ### 2.1 Props 属性
33
+
34
+ | 属性名 | 类型 | 必填 | 默认值 | 说明 |
35
+ | :--- | :--- | :---: | :---: | :--- |
36
+ | `title` | 标题名称 | String | - |
37
+ | `sub-title` | 左侧副标题 | String | - |
38
+ | `desc` | 右侧描述 | String | - |
39
+ | `desc-text-align` | 右侧描述文本对齐方式 text-alignhttps://www.w3school.com.cn/cssref/pr_text_text-align.asp | String | right |
40
+ | `is-link` | 是否展示右侧箭头并开启点击反馈 | Boolean | false |
41
+ | `round-radius` | 圆角半径 | Number | 6px |
42
+ | `center` | 是否使内容垂直居中 | Boolean | false |
43
+ | `size` | 单元格大小,可选值为 large | String | - |
44
+
45
+ ### 2.2 Events 事件
46
+
47
+ | 事件名 | 类型 | 说明 |
48
+ | :--- | :--- | :--- |
49
+ | `click` | 点击事件 | event:Event |
50
+
51
+ ### 2.3 Methods 方法
52
+
53
+ | 方法名 | 参数 | 说明 |
54
+ | :--- | :--- | :--- |
55
+
56
+
57
+ ### 2.4 Slots 插槽
58
+
59
+ | 插槽名 | 说明 |
60
+ | :--- | :--- |
61
+ | `icon` | 自定义左侧 icon 区域 |
62
+ | `default` | 自定义内容 |
63
+ | `link` | 自定义右侧 link 区域 |
64
+
65
+ ## 3. 例子 (Examples)
66
+
67
+
68
+
69
+ ## 4. 相关组件 (Related Components)
70
+ - **fox-js**: 与 Cell 配合使用的相关组件
71
+ - **fox-cell-group**: 与 Cell 配合使用的相关组件
72
+ - **fox-switch**: 与 Cell 配合使用的相关组件
73
+ - **fox-icon**: 与 Cell 配合使用的相关组件
74
+
@@ -0,0 +1,387 @@
1
+ <!--
2
+ * @Author: 江成
3
+ * @Date: 2026-04-27 00:37:28
4
+ * @LastEditors: 江成
5
+ * @LastEditTime: 2026-05-12 22:33:21
6
+ -->
7
+ ---
8
+ title: CheckboxItem 组件使用规范
9
+ impact: HIGH
10
+ type: capability
11
+ description: 多选按钮组
12
+ tags: [foxui, fox-checkbox-item, FoxCheckboxItem]
13
+ version: "4.0.0"
14
+ author: jiangcheng
15
+ related: ["fox-js","fox-group","fox-slot-item","fox-checkbox","fox-checkbox-group","fox-row-item","fox-button","fox-switch-item"]
16
+ ---
17
+
18
+ # CheckboxItem 组件使用规范
19
+
20
+ ## 1. 核心职责 (Core Responsibility)
21
+ CheckboxItem 是 foxui 中用于 **多选按钮组** 的标准组件。
22
+ - **基于**: NutUI `nut-checkbox-item` 进行了二次封装 (若为纯自研组件则填 "自定义开发")
23
+ - **核心增强**: 基于 NutUI 组件二次封装、内置必填校验标识、支持 v-model 双向绑定、支持标签位置自定义、支持禁用/只读状态、内置多级提示信息、适配 H5 与小程序多端、支持插槽扩展自定义内容、支持主题定制
24
+ - **适用场景**: 多选按钮组
25
+
26
+ > 💡 **关键原则**: 在所有 多选按钮组 中,**必须**优先使用此组件,禁止直接使用原生 NutUI 组件。
27
+
28
+ ---
29
+
30
+ ## 2. 关键 API 说明 (Key API)
31
+
32
+ ### 2.1 Props 属性
33
+
34
+ | 属性名 | 类型 | 必填 | 默认值 | 说明 |
35
+ | :--- | :--- | :---: | :---: | :--- |
36
+ | `v-model` | 输入值,双向绑定 | String | - |
37
+ | `text-align` | 文本位置,可选值left,center,right | String | left |
38
+ | `label` | 标签 | String | - |
39
+ | `label-width` | 标签宽度 | String | - |
40
+ | `label-position` | 标签位置可选值left,right,top | String | - |
41
+ | `is-required` | 左侧号是否展示 | Boolean | false |
42
+ | `disabled` | 是否禁用 | Boolean | false |
43
+ | `readonly` | 是否只读 | Boolean | false |
44
+ | `error-tip` | 错误提示 | String | - |
45
+ | `error-icon` | 错误提示图标 | Component | - |
46
+ | `warn-tip` | 警告提示 | String | - |
47
+ | `warn-icon` | 警告提示图标 | Component | - |
48
+ | `info-tip` | 提示 | String | - |
49
+ | `info-icon` | 提示图标 | Component | - |
50
+ | `valueType` | 值的类型text:item.text,value:item.value,item:item | String | "value" |
51
+ | `text-key` | 指定异构数据源的text key | String | "text" |
52
+ | `value-key` | 指定异构数据源的value key | String | "value" |
53
+ | `disabled-key` | 指定异构数据源的disabled key | String | "disabled" |
54
+ | `shape` | radio形状 | String | button |
55
+ | `icon-size` | icon大小 | String | - |
56
+ | `icon` | 默认图标 | Component | - |
57
+ | `checkedIcon` | 选中图标 | Component | - |
58
+ | `indeterminateIcon` | 半选状态图标 | Component | - |
59
+ | `direction` | radio排序方式 | String | vertical |
60
+ | `text-position` | radio label位置 | String | left |
61
+ | `source` | 数据源 | string / array/ function | — |
62
+ | `source-filter` | 数据源过滤器 | function | — |
63
+ | `param` | 请求参数配置数据源api使用 | record<string,any> | — |
64
+
65
+ ### 2.2 Events 事件
66
+
67
+ | 事件名 | 类型 | 说明 |
68
+ | :--- | :--- | :--- |
69
+ | `change` | 值变化时触发 | 当前选中项值(value)设置value后有值、默认为空 |
70
+
71
+ ### 2.3 Methods 方法
72
+
73
+ | 方法名 | 参数 | 说明 |
74
+ | :--- | :--- | :--- |
75
+ | `toggleAll` | 选中/清空所有 | checked |
76
+ | `toggleReverse` | 反选 | - |
77
+
78
+ ### 2.4 Slots 插槽
79
+
80
+ | 插槽名 | 说明 |
81
+ | :--- | :--- |
82
+ | `options` | source为空的情况下,直接编写checkbox列表 |
83
+ | `default` | label |
84
+ | `text` | 自定义checkbox项的text内容 |
85
+ | `icon` | 默认图标 |
86
+ | `checkedIcon` | 选中图标 |
87
+ | `indeterminateIcon` | 半选图标 |
88
+
89
+ ## 3. 例子 (Examples)
90
+
91
+ ## 代码演示
92
+ ### 左侧位置
93
+ 通过 **v-model** 绑定值当前选项的 **value**,并且通过**source**属性设置checkbox列表,并通过`text-position`设置label位置
94
+ ```html
95
+  <fox-checkbox-item v-model="val" :source="m_items" text-position="left"></fox-checkbox-item>
96
+ ```
97
+ ```ts
98
+ // item数据源
99
+ const m_items = ref([
100
+   {
101
+     text: '复选框1',
102
+     value: '1'
103
+   },
104
+   {
105
+     text: '复选框2',
106
+     value: '2'
107
+   },
108
+   {
109
+     text: '复选框3',
110
+     value: '3'
111
+   }
112
+ ])
113
+ const val = ref<string[] | string>('')
114
+ ```
115
+ ### 右侧位置
116
+ 通过`text-position`设置label的位置
117
+ ```html
118
+ <fox-checkbox-item v-model="val2" :source="m_items"></fox-checkbox-item>
119
+ ```
120
+ ```ts
121
+ import { ref } from 'vue'
122
+ // item数据源
123
+ const m_items = ref([
124
+   {
125
+     text: '复选框1',
126
+     value: '1'
127
+   },
128
+   {
129
+     text: '复选框2',
130
+     value: '2'
131
+   },
132
+   {
133
+     text: '复选框3',
134
+     value: '3'
135
+   }
136
+ ])
137
+ const val2 = ref<string[] | string>(['2'])
138
+ ```
139
+ ### 按钮形状
140
+ ```html
141
+ <fox-checkbox-item v-model="val3" :source="m_items" direction="horizontal" shape="button"></fox-checkbox-item>
142
+ ```
143
+ ```ts
144
+ import { ref } from 'vue'
145
+ // item数据源
146
+ const m_items = ref([
147
+   {
148
+     text: '复选框1',
149
+     value: '1'
150
+   },
151
+   {
152
+     text: '复选框2',
153
+     value: '2'
154
+   },
155
+   {
156
+     text: '复选框3',
157
+     value: '3'
158
+   }
159
+ ])
160
+ const val3 = ref<string[] | string>(['3'])
161
+ ```
162
+ ### 水平排序
163
+ 通过属性`direction`设置排列方式
164
+ ```html
165
+ <fox-checkbox-item v-model="val3" :source="m_items" direction="horizontal" ></fox-checkbox-item>
166
+ ```
167
+ ```ts
168
+ import { ref } from 'vue'
169
+ // item数据源
170
+ const m_items = ref([
171
+   {
172
+     text: '复选框1',
173
+     value: '1'
174
+   },
175
+   {
176
+     text: '复选框2',
177
+     value: '2'
178
+   },
179
+   {
180
+     text: '复选框3',
181
+     value: '3'
182
+   }
183
+ ])
184
+ const val3 = ref<string[] | string>(['3'])
185
+ ```
186
+ ### 自定义样式
187
+ 通过`icon-size`设置图标大小,并可以通过插槽`icon`,`checkedIcon`和`indeterminateIcon`来设置自定义图标
188
+ ```html
189
+ <fox-checkbox-item v-model="val4" :source="m_items4" icon-size="10px"></fox-checkbox-item>
190
+ <fox-checkbox-item v-model="val5" :source="m_items5">
191
+   <template v-slot:icon>
192
+      <Checklist></Checklist>
193
+   </template>
194
+  <template v-slot:checkedIcon>
195
+      <Checklist color="red"></Checklist>
196
+   </template>
197
+  </fox-checkbox-item>
198
+ ```
199
+ ```ts
200
+ import { ref } from 'vue'
201
+ import { Checklist } from
202
+ const val4 = ref<string[]>([])
203
+ const m_items4 = ref([
204
+   {
205
+     text: '自定义尺寸10',
206
+     value: '1'
207
+   },
208
+   {
209
+     text: '自定义尺寸10',
210
+     value: '2'
211
+   }
212
+ ])
213
+ const val5 = ref<string[]>([])
214
+ const m_items5 = ref([
215
+   {
216
+     text: '自定义图标',
217
+     value: '1'
218
+   },
219
+   {
220
+     text: '自定义图标',
221
+     value: '2'
222
+   }
223
+ ])
224
+ ```
225
+ ### 禁用/只读
226
+ ```html
227
+ <fox-group title="禁用状态" column="1" style="margin-top: 20px">
228
+     <fox-checkbox-item v-model="val6" :source="m_items6" :disabled="true"></fox-checkbox-item>
229
+ </fox-group>
230
+ <fox-group title="只读状态" column="1" style="margin-top: 20px">
231
+     <fox-checkbox-item v-model="val7" :source="m_items7" :readonly="true"></fox-checkbox-item>
232
+ </fox-group>
233
+ <fox-group title="部分禁用" style="margin-top: 20px">
234
+     <fox-checkbox-item v-model="val8" :source="m_items8"></fox-checkbox-item>
235
+ </fox-group>
236
+ ```
237
+ ```ts
238
+ import { ref } from 'vue'
239
+ const val6 = ref<string[]>([])
240
+ const m_items6 = ref([
241
+   {
242
+     text: '禁用复选框1',
243
+     value: '1'
244
+   },
245
+   {
246
+     text: '禁用复选框2',
247
+     value: '2'
248
+   }
249
+ ])
250
+ const val7 = ref<string[]>(['1'])
251
+ const m_items7 = ref([
252
+   {
253
+     text: '只读复选框1',
254
+     value: '1'
255
+   },
256
+   {
257
+     text: '只读复选框2',
258
+     value: '2'
259
+   }
260
+ ])
261
+ const val8 = ref<string[]>([])
262
+ const m_items8 = ref([
263
+   {
264
+     text: '部分禁用',
265
+     value: '1',
266
+     disabled: true
267
+   },
268
+   {
269
+     text: '部分禁用',
270
+     value: '2'
271
+   },
272
+   {
273
+     text: '部分禁用',
274
+     value: '3'
275
+   }
276
+ ])
277
+ ```
278
+ ### 全选/半选/取消
279
+ ```html
280
+  <fox-group title="全选/半选/取消" column="1" style="margin-top: 20px">
281
+     <fox-slot-item>
282
+         <fox-checkbox v-model="val9" :indeterminate="indeterminate" @change="onChange">全选</fox-checkbox>
283
+     </fox-slot-item>
284
+     <fox-checkbox-item v-model="val10" :source="m_items10" @change="onGroupChange"></fox-checkbox-item>
285
+ </fox-group>
286
+ ```
287
+ ```ts
288
+ import { ref } from 'vue'
289
+ const val9 = ref(false)
290
+ const indeterminate = ref(false)
291
+ const onChange = (val: boolean) => {
292
+   if (val) {
293
+     indeterminate.value = false
294
+     val10.value = m_items10.value.map(item => {
295
+       return item.value
296
+     })
297
+   } else if (!val && indeterminate.value === false) {
298
+     val10.value = []
299
+   }
300
+ }
301
+ const onGroupChange = (vals: string[]) => {
302
+   if (vals.length === m_items10.value.length) {
303
+     val9.value = true
304
+     indeterminate.value = false
305
+   } else if (vals.length > 0) {
306
+     val9.value = false
307
+     indeterminate.value = true
308
+   } else {
309
+     val9.value = false
310
+     indeterminate.value = false
311
+   }
312
+ }
313
+ const val10 = ref<string[]>([])
314
+ const m_items10 = ref([
315
+   {
316
+     text: '组合复选框1',
317
+     value: '1'
318
+   },
319
+   {
320
+     text: '组合复选框2',
321
+     value: '2'
322
+   },
323
+   {
324
+     text: '组合复选框3',
325
+     value: '3'
326
+   },
327
+   {
328
+     text: '组合复选框4',
329
+     value: '4'
330
+   }
331
+ ])
332
+ ```
333
+ ### 返回类型
334
+ 通过fox-checkbox-group组件**value-type**设置v-model绑定的数据类型
335
+ * value(默认) 绑定item对象的item.value
336
+ * text 绑定item对象的item.text
337
+ * item 绑定item对象
338
+ #### 返回value类型
339
+ ```html
340
+ <fox-checkbox-item v-model="val11" :source="m_items11"></fox-checkbox-item>
341
+ ```
342
+ ```ts
343
+ import { ref } from 'vue'
344
+ const val11 = ref(['1'])
345
+ const m_items11 = ref([
346
+   { text: '返回value1', value: '1' },
347
+   { text: '返回value2', value: '2' },
348
+   { text: '返回value3', value: '3' }
349
+ ])
350
+ ```
351
+ ### 返回text类型
352
+ ```html
353
+ <fox-checkbox-item value-type="text" v-model="val12" :source="m_items12"></fox-checkbox-item>
354
+ ```
355
+ ```ts
356
+ import { ref } from 'vue'
357
+ const val12 = ref(['返回text2'])
358
+ const m_items12 = ref([
359
+   { text: '返回text1', value: '1' },
360
+   { text: '返回text2', value: '2' },
361
+   { text: '返回text3', value: '3' }
362
+ ])
363
+ ```
364
+ ### 返回item类型
365
+ ```html
366
+ <fox-checkbox-item value-type="item" v-model="val13" :source="m_items13"></fox-checkbox-item>
367
+ ```
368
+ ```ts
369
+ import { ref } from 'vue'
370
+ const val13 = ref([{ text: '返回Item3', value: '3' }])
371
+ const m_items13 = ref([
372
+   { text: '返回Item1', value: '1' },
373
+   { text: '返回Item2', value: '2' },
374
+   { text: '返回Item3', value: '3' }
375
+ ])
376
+ ```
377
+
378
+ ## 4. 相关组件 (Related Components)
379
+ - **fox-js**: 与 CheckboxItem 配合使用的相关组件
380
+ - **fox-group**: 与 CheckboxItem 配合使用的相关组件
381
+ - **fox-slot-item**: 与 CheckboxItem 配合使用的相关组件
382
+ - **fox-checkbox**: 与 CheckboxItem 配合使用的相关组件
383
+ - **fox-checkbox-group**: 与 CheckboxItem 配合使用的相关组件
384
+ - **fox-row-item**: 与 CheckboxItem 配合使用的相关组件
385
+ - **fox-button**: 与 CheckboxItem 配合使用的相关组件
386
+ - **fox-switch-item**: 与 CheckboxItem 配合使用的相关组件
387
+
@@ -0,0 +1,65 @@
1
+ <!--
2
+ * @Author: 江成
3
+ * @Date: 2026-04-27 00:37:28
4
+ * @LastEditors: 江成
5
+ * @LastEditTime: 2026-05-12 22:33:21
6
+ -->
7
+ ---
8
+ title: CircleProgress 组件使用规范
9
+ impact: HIGH
10
+ type: capability
11
+ description: 用来展示进度
12
+ tags: [foxui, fox-circle-progress, FoxCircleProgress]
13
+ version: "4.0.0"
14
+ author: jiangcheng
15
+ related: ["fox-js","fox-cell","fox-circleprogress","fox-button"]
16
+ ---
17
+
18
+ # CircleProgress 组件使用规范
19
+
20
+ ## 1. 核心职责 (Core Responsibility)
21
+ CircleProgress 是 foxui 中用于 **用来展示进度** 的标准组件。
22
+ - **基于**: NutUI `nut-circle-progress` 进行了二次封装 (若为纯自研组件则填 "自定义开发")
23
+ - **核心增强**: 基于 NutUI 组件二次封装、适配 H5 与小程序多端、支持插槽扩展自定义内容、支持主题定制
24
+ - **适用场景**: 用来展示进度
25
+
26
+ > 💡 **关键原则**: 在所有 用来展示进度 中,**必须**优先使用此组件,禁止直接使用原生 NutUI 组件。
27
+
28
+ ---
29
+
30
+ ## 2. 关键 API 说明 (Key API)
31
+
32
+ ### 2.1 Props 属性
33
+
34
+ | 属性名 | 类型 | 必填 | 默认值 | 说明 |
35
+ | :--- | :--- | :---: | :---: | :--- |
36
+
37
+
38
+ ### 2.2 Events 事件
39
+
40
+ | 事件名 | 类型 | 说明 |
41
+ | :--- | :--- | :--- |
42
+
43
+
44
+ ### 2.3 Methods 方法
45
+
46
+ | 方法名 | 参数 | 说明 |
47
+ | :--- | :--- | :--- |
48
+
49
+
50
+ ### 2.4 Slots 插槽
51
+
52
+ | 插槽名 | 说明 |
53
+ | :--- | :--- |
54
+ | `default` | 自定义文字内容 |
55
+
56
+ ## 3. 例子 (Examples)
57
+
58
+
59
+
60
+ ## 4. 相关组件 (Related Components)
61
+ - **fox-js**: 与 CircleProgress 配合使用的相关组件
62
+ - **fox-cell**: 与 CircleProgress 配合使用的相关组件
63
+ - **fox-circleprogress**: 与 CircleProgress 配合使用的相关组件
64
+ - **fox-button**: 与 CircleProgress 配合使用的相关组件
65
+
@@ -0,0 +1,71 @@
1
+ <!--
2
+ * @Author: 江成
3
+ * @Date: 2026-04-27 00:37:28
4
+ * @LastEditors: 江成
5
+ * @LastEditTime: 2026-05-12 22:33:21
6
+ -->
7
+ ---
8
+ title: Collapse 组件使用规范
9
+ impact: HIGH
10
+ type: capability
11
+ description: 折叠面板
12
+ tags: [foxui, fox-collapse, FoxCollapse]
13
+ version: "4.0.0"
14
+ author: jiangcheng
15
+ related: ["fox-collapse-item"]
16
+ ---
17
+
18
+ # Collapse 组件使用规范
19
+
20
+ ## 1. 核心职责 (Core Responsibility)
21
+ Collapse 是 foxui 中用于 **折叠面板** 的标准组件。
22
+ - **基于**: NutUI `nut-collapse` 进行了二次封装 (若为纯自研组件则填 "自定义开发")
23
+ - **核心增强**: 基于 NutUI 组件二次封装、支持 v-model 双向绑定、支持禁用/只读状态、支持插槽扩展自定义内容、支持主题定制
24
+ - **适用场景**: 折叠面板
25
+
26
+ > 💡 **关键原则**: 在所有 折叠面板 中,**必须**优先使用此组件,禁止直接使用原生 NutUI 组件。
27
+
28
+ ---
29
+
30
+ ## 2. 关键 API 说明 (Key API)
31
+
32
+ ### 2.1 Props 属性
33
+
34
+ | 属性名 | 类型 | 必填 | 默认值 | 说明 |
35
+ | :--- | :--- | :---: | :---: | :--- |
36
+ | `name` | 唯一标识符,必填 | string \ | number |
37
+ | `title` | 标题栏左侧内容,支持插槽传入(props 传入的优先级更高) | string | - |
38
+ | `value` | 标题栏右侧内容,支持插槽传入(props 传入的优先级更高) | string | - |
39
+ | `icon` | 标题栏左侧图标组件,等同于 nutui-icon 组件 | - | - |
40
+ | `label` | 标题栏描述信息 | number \ | string |
41
+ | `rotate` | 点击折叠和展开的旋转角度,在自定义图标模式下生效 | string \ | number |
42
+ | `disabled` | 标题栏是否禁用 | boolean | false |
43
+ | `border` | 是否显示边框 | boolean | true |
44
+
45
+ ### 2.2 Events 事件
46
+
47
+ | 事件名 | 类型 | 说明 |
48
+ | :--- | :--- | :--- |
49
+
50
+
51
+ ### 2.3 Methods 方法
52
+
53
+ | 方法名 | 参数 | 说明 |
54
+ | :--- | :--- | :--- |
55
+
56
+
57
+ ### 2.4 Slots 插槽
58
+
59
+ | 插槽名 | 说明 |
60
+ | :--- | :--- |
61
+ | `title` | 标题栏左侧内容插槽 |
62
+ | `value` | 标题栏右侧内容插槽 |
63
+ | `extra` | 设置标题下固定内容(不折叠) |
64
+
65
+ ## 3. 例子 (Examples)
66
+
67
+
68
+
69
+ ## 4. 相关组件 (Related Components)
70
+ - **fox-collapse-item**: 与 Collapse 配合使用的相关组件
71
+
@@ -0,0 +1,78 @@
1
+ <!--
2
+ * @Author: 江成
3
+ * @Date: 2026-04-27 00:37:28
4
+ * @LastEditors: 江成
5
+ * @LastEditTime: 2026-05-12 22:33:21
6
+ -->
7
+ ---
8
+ title: CountDown 组件使用规范
9
+ impact: HIGH
10
+ type: capability
11
+ description: 倒计时
12
+ tags: [foxui, fox-count-down, FoxCountDown]
13
+ version: "4.0.0"
14
+ author: jiangcheng
15
+ related: ["fox-js","fox-cell","fox-countdown","fox-button","fox-grid","fox-grid-item"]
16
+ ---
17
+
18
+ # CountDown 组件使用规范
19
+
20
+ ## 1. 核心职责 (Core Responsibility)
21
+ CountDown 是 foxui 中用于 **倒计时** 的标准组件。
22
+ - **基于**: NutUI `nut-count-down` 进行了二次封装 (若为纯自研组件则填 "自定义开发")
23
+ - **核心增强**: 基于 NutUI 组件二次封装、支持 v-model 双向绑定、适配 H5 与小程序多端、支持主题定制
24
+ - **适用场景**: 倒计时
25
+
26
+ > 💡 **关键原则**: 在所有 倒计时 中,**必须**优先使用此组件,禁止直接使用原生 NutUI 组件。
27
+
28
+ ---
29
+
30
+ ## 2. 关键 API 说明 (Key API)
31
+
32
+ ### 2.1 Props 属性
33
+
34
+ | 属性名 | 类型 | 必填 | 默认值 | 说明 |
35
+ | :--- | :--- | :---: | :---: | :--- |
36
+ | `v-model` | 当前时间,自定义展示内容时生效 | Object | |
37
+ | `start-time` | 开始时间 | String, Number | Date.now |
38
+ | `end-time` | 结束时间 | String, Number | Date.now |
39
+ | `format` | 时间格式 | String | HH:mm:ss |
40
+ | `millisecond` | 是否开启毫秒级渲染 | Boolean | false |
41
+ | `auto-start` | 是否自动开始倒计时 | Boolean | true |
42
+ | `time` | 倒计时显示时间,单位是毫秒。autoStart 为 false 时生效 | String,Number | 0 |
43
+ | `paused` | 是否暂停 | Boolean | false |
44
+
45
+ ### 2.2 Events 事件
46
+
47
+ | 事件名 | 类型 | 说明 |
48
+ | :--- | :--- | :--- |
49
+ | `on-end` | 倒计时结束时 | 剩余时间戳 |
50
+ | `on-paused` | 暂停时 | 剩余时间戳 |
51
+ | `on-restart` | 暂停时 | 剩余时间戳 |
52
+
53
+ ### 2.3 Methods 方法
54
+
55
+ | 方法名 | 参数 | 说明 |
56
+ | :--- | :--- | :--- |
57
+ | `start` | 开始倒计时 |
58
+ | `pause` | 暂停倒计时 |
59
+ | `reset` | 重设倒计时,若 auto-start 为 true,重设后会自动开始倒计时 |
60
+
61
+ ### 2.4 Slots 插槽
62
+
63
+ | 插槽名 | 说明 |
64
+ | :--- | :--- |
65
+
66
+
67
+ ## 3. 例子 (Examples)
68
+
69
+
70
+
71
+ ## 4. 相关组件 (Related Components)
72
+ - **fox-js**: 与 CountDown 配合使用的相关组件
73
+ - **fox-cell**: 与 CountDown 配合使用的相关组件
74
+ - **fox-countdown**: 与 CountDown 配合使用的相关组件
75
+ - **fox-button**: 与 CountDown 配合使用的相关组件
76
+ - **fox-grid**: 与 CountDown 配合使用的相关组件
77
+ - **fox-grid-item**: 与 CountDown 配合使用的相关组件
78
+