xt-element-ui 1.3.3 → 1.3.4

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 (111) hide show
  1. package/CHANGELOG.md +72 -72
  2. package/LICENSE +21 -21
  3. package/README.md +240 -240
  4. package/docs/README.md +100 -100
  5. package/docs/components/base/xt-button.md +114 -114
  6. package/docs/components/base/xt-card-item.md +104 -104
  7. package/docs/components/base/xt-card.md +108 -108
  8. package/docs/components/base/xt-config-provider.md +199 -199
  9. package/docs/components/base/xt-flex-box.md +115 -115
  10. package/docs/components/base/xt-grid-box.md +302 -302
  11. package/docs/components/base/xt-input.md +150 -150
  12. package/docs/components/base/xt-map-provider.md +23 -23
  13. package/docs/components/base/xt-map.md +331 -331
  14. package/docs/components/base/xt-step-price.md +165 -165
  15. package/docs/components/base/xt-text.md +212 -212
  16. package/docs/components/base/xt-time.md +165 -165
  17. package/docs/components/extend/ex-bar.md +67 -67
  18. package/docs/components/extend/ex-button.md +62 -62
  19. package/docs/components/extend/ex-card.md +86 -86
  20. package/docs/components/extend/ex-chart.md +463 -463
  21. package/docs/components/extend/ex-icon.md +189 -189
  22. package/docs/components/extend/ex-line.md +70 -70
  23. package/docs/components/extend/ex-multi.md +155 -155
  24. package/docs/components/extend/ex-pie.md +69 -69
  25. package/docs/components/extend/ex-select-tree.md +210 -210
  26. package/docs/components/extend/ex-table.md +590 -590
  27. package/docs/components/extend/ex-upload.md +134 -134
  28. package/docs/components/utils/size.md +147 -147
  29. package/docs/components/utils/theme.md +182 -182
  30. package/lib/index.common.js +4112 -4122
  31. package/lib/index.umd.js +4072 -4081
  32. package/lib/index.umd.min.js +3 -3
  33. package/package.json +80 -81
  34. package/src/components/ex-button/index.js +7 -7
  35. package/src/components/ex-button/index.vue +66 -66
  36. package/src/components/ex-button/style/index.scss +67 -67
  37. package/src/components/ex-card/index.js +7 -7
  38. package/src/components/ex-card/index.vue +68 -68
  39. package/src/components/ex-card/style/index.scss +73 -73
  40. package/src/components/ex-chart/index.js +7 -7
  41. package/src/components/ex-chart/index.vue +136 -136
  42. package/src/components/ex-date-picker/index.js +7 -7
  43. package/src/components/ex-icon/index.js +7 -7
  44. package/src/components/ex-icon/index.vue +168 -168
  45. package/src/components/ex-icon/style/index.scss +7 -7
  46. package/src/components/ex-page/index.js +7 -7
  47. package/src/components/ex-select-tree/index.js +7 -7
  48. package/src/components/ex-table/ExTableCell.vue +22 -22
  49. package/src/components/ex-table/index.js +7 -7
  50. package/src/components/ex-table/virtualScrollData.js +35 -35
  51. package/src/components/ex-upload/index.js +7 -7
  52. package/src/components/index.scss +39 -39
  53. package/src/components/xt-button/index.js +7 -7
  54. package/src/components/xt-button/index.vue +97 -97
  55. package/src/components/xt-card/index.js +7 -7
  56. package/src/components/xt-card/style/index.scss +48 -48
  57. package/src/components/xt-card-item/index.js +7 -7
  58. package/src/components/xt-card-item/style/index copy.scss +71 -71
  59. package/src/components/xt-card-item/style/index.scss +82 -82
  60. package/src/components/xt-config-provider/index.js +7 -7
  61. package/src/components/xt-config-provider/index.vue +362 -362
  62. package/src/components/xt-config-provider/style/index.scss +11 -11
  63. package/src/components/xt-flex-box/index.js +7 -7
  64. package/src/components/xt-flex-box/style/index.scss +81 -81
  65. package/src/components/xt-grid-box/index.js +7 -7
  66. package/src/components/xt-grid-box/style/index.scss +92 -92
  67. package/src/components/xt-grid-item/index.js +7 -7
  68. package/src/components/xt-grid-item/index.vue +106 -106
  69. package/src/components/xt-input/index.js +7 -7
  70. package/src/components/xt-input/index.vue +66 -66
  71. package/src/components/xt-input/style/index.scss +84 -84
  72. package/src/components/xt-map/adapters/amap.js +235 -235
  73. package/src/components/xt-map/adapters/baidu.js +254 -254
  74. package/src/components/xt-map/adapters/base.js +267 -267
  75. package/src/components/xt-map/adapters/index.js +29 -29
  76. package/src/components/xt-map/adapters/tianditu.js +242 -242
  77. package/src/components/xt-map/config/xt-map-config.js +197 -197
  78. package/src/components/xt-map/index.js +8 -8
  79. package/src/components/xt-map/index.vue +351 -351
  80. package/src/components/xt-map/loaders/script-loader.js +114 -114
  81. package/src/components/xt-map/provider.vue +200 -200
  82. package/src/components/xt-map/style/index.scss +77 -77
  83. package/src/components/xt-map-provider/index.js +8 -8
  84. package/src/components/xt-step-price/index.js +10 -10
  85. package/src/components/xt-step-price/index.vue +272 -272
  86. package/src/components/xt-step-price/style/index.scss +123 -123
  87. package/src/components/xt-step-price-item/index.js +7 -7
  88. package/src/components/xt-step-price-item/index.vue +187 -187
  89. package/src/components/xt-text/index.js +7 -7
  90. package/src/components/xt-text/index.vue +1 -1
  91. package/src/components/xt-text/style/index.scss +92 -92
  92. package/src/components/xt-time/index.js +7 -7
  93. package/src/components/xt-time/index.vue +313 -313
  94. package/src/components/xt-time/style/index.scss +23 -23
  95. package/src/config/element-registry.js +135 -135
  96. package/src/index.js +162 -178
  97. package/src/styles/css-variables.scss +257 -257
  98. package/src/styles/theme/background.scss +5 -5
  99. package/src/styles/theme/border-radius.scss +3 -3
  100. package/src/styles/theme/borders.scss +3 -3
  101. package/src/styles/theme/colors.scss +101 -101
  102. package/src/styles/theme/component-variables.scss +69 -69
  103. package/src/styles/theme/dark-variables.scss +28 -28
  104. package/src/styles/theme/font.scss +12 -12
  105. package/src/styles/theme/index.scss +11 -11
  106. package/src/styles/theme/shadows.scss +2 -2
  107. package/src/styles/theme/spacing.scss +4 -4
  108. package/src/styles/theme/transitions.scss +2 -2
  109. package/src/styles/theme/typography.scss +4 -4
  110. package/src/styles/variables-export.scss +85 -85
  111. package/src/utils/index.js +191 -202
package/docs/README.md CHANGED
@@ -1,100 +1,100 @@
1
- ---
2
- home: true
3
- heroImage: /favicon.ico
4
- heroText: XT-Element-UI
5
- tagline: 基于 Vue 2.7 + ElementUI 的企业级组件库
6
- actionText: 🚀 快速上手
7
- actionLink: /components/base/xt-button
8
- features:
9
- - title: 🎯 丰富的组件
10
- details: 提供 15+ 组件,覆盖布局、表单、数据展示、图表等常见场景
11
- - title: 📦 开箱即用
12
- details: 基于 ElementUI 构建,与现有 ElementUI 项目无缝集成
13
- - title: 🪶 按需引入
14
- details: 完整的 npm 包架构,支持按需引入,减小打包体积
15
- - title: 🎨 双架构设计
16
- details: Xt 自定义组件 + Ex 扩展组件,职责清晰、便于维护
17
- - title: 🌓 主题系统
18
- details: 支持亮色/暗色主题切换,支持自定义主色调
19
- - title: 📊 图表能力
20
- details: 内置 ECharts 封装,提供柱状图、折线图、饼图、混合图
21
- footer: MIT Licensed | Copyright © 2026 XT-Element-UI
22
- ---
23
-
24
- ::: tip 💡 快速开始
25
-
26
- ```bash
27
- # 安装
28
- npm install xt-element-ui --save
29
-
30
- # 全局引入
31
- import Vue from 'vue'
32
- import XtElementUI from 'xt-element-ui'
33
- import 'xt-element-ui/lib/index.css'
34
-
35
- Vue.use(XtElementUI)
36
- ```
37
-
38
- :::
39
-
40
- ---
41
-
42
- ## 📦 组件概览
43
-
44
- ### 🎨 Xt 组件(自定义组件)
45
-
46
- 全新开发、不依赖 ElementUI 原有组件:
47
-
48
- | 组件 | 说明 |
49
- |------|------|
50
- | **XtButton** | 按钮组件 |
51
- | **XtCard** | 卡片组件 |
52
- | **XtCardItem** | 卡片项组件 |
53
- | **XtFlexBox** | 弹性布局组件 |
54
- | **XtGridBox** | 网格布局组件 |
55
- | **XtText** | 文本组件 |
56
- | **XtInput** | 输入框组件 |
57
- | **XtConfigProvider** | 全局配置提供器 |
58
-
59
- ### ✨ Ex 组件(扩展组件)
60
-
61
- 基于 ElementUI / ECharts 二次封装的增强组件:
62
-
63
- | 组件 | 说明 |
64
- |------|------|
65
- | **ExButton** | 基于 ElementUI Button 的扩展按钮 |
66
- | **ExCard** | 基于 ElementUI Card 的扩展卡片 |
67
- | **ExTable** | 基于 ElementUI Table 的扩展表格(支持虚拟滚动) |
68
- | **ExBar / ExLine / ExPie / ExMulti** | 基于 ECharts 的图表组件 |
69
- | **ExSelectTree** | 下拉选择树组件 |
70
- | **ExUpload** | 上传组件(支持图片预览) |
71
- | **ExPage** | 页面组件 |
72
- | **ExDatePicker** | 日期选择组件 |
73
- | **ExIcon** | 图标组件(支持 SVG / 字体图标) |
74
-
75
- ---
76
-
77
- ## 🌐 GitHub Pages 自动部署
78
-
79
- 本项目通过 **GitHub Actions** 自动构建并部署文档到 **GitHub Pages**:
80
-
81
- - 📖 **在线文档**:https://JobWebNie.github.io/xt-element-ui/
82
- - 🐛 **问题反馈**:https://github.com/JobWebNie/xt-element-ui/issues
83
- - 📦 **npm 主页**:https://www.npmjs.com/package/xt-element-ui
84
-
85
- 推送代码到 `main` / `master` 分支后,GitHub Actions 将自动执行:
86
- 1. 安装依赖
87
- 2. 构建 VuePress 文档
88
- 3. 部署到 GitHub Pages
89
-
90
- ---
91
-
92
- ## 📚 更多资源
93
-
94
- - **[查看完整文档](https://JobWebNie.github.io/xt-element-ui/)**
95
- - **[更新日志](https://github.com/JobWebNie/xt-element-ui/blob/main/CHANGELOG.md)**
96
- - **[贡献指南](https://github.com/JobWebNie/xt-element-ui/blob/main/CONTRIBUTING.md)**
97
- - **[GitHub 仓库](https://github.com/JobWebNie/xt-element-ui)**
98
-
99
-
100
- # 在 GitHub 新建仓库后
1
+ ---
2
+ home: true
3
+ heroImage: /favicon.ico
4
+ heroText: XT-Element-UI
5
+ tagline: 基于 Vue 2.7 + ElementUI 的企业级组件库
6
+ actionText: 🚀 快速上手
7
+ actionLink: /components/base/xt-button
8
+ features:
9
+ - title: 🎯 丰富的组件
10
+ details: 提供 15+ 组件,覆盖布局、表单、数据展示、图表等常见场景
11
+ - title: 📦 开箱即用
12
+ details: 基于 ElementUI 构建,与现有 ElementUI 项目无缝集成
13
+ - title: 🪶 按需引入
14
+ details: 完整的 npm 包架构,支持按需引入,减小打包体积
15
+ - title: 🎨 双架构设计
16
+ details: Xt 自定义组件 + Ex 扩展组件,职责清晰、便于维护
17
+ - title: 🌓 主题系统
18
+ details: 支持亮色/暗色主题切换,支持自定义主色调
19
+ - title: 📊 图表能力
20
+ details: 内置 ECharts 封装,提供柱状图、折线图、饼图、混合图
21
+ footer: MIT Licensed | Copyright © 2026 XT-Element-UI
22
+ ---
23
+
24
+ ::: tip 💡 快速开始
25
+
26
+ ```bash
27
+ # 安装
28
+ npm install xt-element-ui --save
29
+
30
+ # 全局引入
31
+ import Vue from 'vue'
32
+ import XtElementUI from 'xt-element-ui'
33
+ import 'xt-element-ui/lib/index.css'
34
+
35
+ Vue.use(XtElementUI)
36
+ ```
37
+
38
+ :::
39
+
40
+ ---
41
+
42
+ ## 📦 组件概览
43
+
44
+ ### 🎨 Xt 组件(自定义组件)
45
+
46
+ 全新开发、不依赖 ElementUI 原有组件:
47
+
48
+ | 组件 | 说明 |
49
+ |------|------|
50
+ | **XtButton** | 按钮组件 |
51
+ | **XtCard** | 卡片组件 |
52
+ | **XtCardItem** | 卡片项组件 |
53
+ | **XtFlexBox** | 弹性布局组件 |
54
+ | **XtGridBox** | 网格布局组件 |
55
+ | **XtText** | 文本组件 |
56
+ | **XtInput** | 输入框组件 |
57
+ | **XtConfigProvider** | 全局配置提供器 |
58
+
59
+ ### ✨ Ex 组件(扩展组件)
60
+
61
+ 基于 ElementUI / ECharts 二次封装的增强组件:
62
+
63
+ | 组件 | 说明 |
64
+ |------|------|
65
+ | **ExButton** | 基于 ElementUI Button 的扩展按钮 |
66
+ | **ExCard** | 基于 ElementUI Card 的扩展卡片 |
67
+ | **ExTable** | 基于 ElementUI Table 的扩展表格(支持虚拟滚动) |
68
+ | **ExBar / ExLine / ExPie / ExMulti** | 基于 ECharts 的图表组件 |
69
+ | **ExSelectTree** | 下拉选择树组件 |
70
+ | **ExUpload** | 上传组件(支持图片预览) |
71
+ | **ExPage** | 页面组件 |
72
+ | **ExDatePicker** | 日期选择组件 |
73
+ | **ExIcon** | 图标组件(支持 SVG / 字体图标) |
74
+
75
+ ---
76
+
77
+ ## 🌐 GitHub Pages 自动部署
78
+
79
+ 本项目通过 **GitHub Actions** 自动构建并部署文档到 **GitHub Pages**:
80
+
81
+ - 📖 **在线文档**:https://JobWebNie.github.io/xt-element-ui/
82
+ - 🐛 **问题反馈**:https://github.com/JobWebNie/xt-element-ui/issues
83
+ - 📦 **npm 主页**:https://www.npmjs.com/package/xt-element-ui
84
+
85
+ 推送代码到 `main` / `master` 分支后,GitHub Actions 将自动执行:
86
+ 1. 安装依赖
87
+ 2. 构建 VuePress 文档
88
+ 3. 部署到 GitHub Pages
89
+
90
+ ---
91
+
92
+ ## 📚 更多资源
93
+
94
+ - **[查看完整文档](https://JobWebNie.github.io/xt-element-ui/)**
95
+ - **[更新日志](https://github.com/JobWebNie/xt-element-ui/blob/main/CHANGELOG.md)**
96
+ - **[贡献指南](https://github.com/JobWebNie/xt-element-ui/blob/main/CONTRIBUTING.md)**
97
+ - **[GitHub 仓库](https://github.com/JobWebNie/xt-element-ui)**
98
+
99
+
100
+ # 在 GitHub 新建仓库后
@@ -1,114 +1,114 @@
1
- ## XtButton 按钮组件
2
-
3
- 按钮用于触发一个操作,如提交表单、打开对话框等。
4
-
5
- ## 基本用法
6
-
7
- ::: demo 基本用法
8
- ```vue
9
- <template>
10
- <XtButton type="primary">主要按钮</XtButton>
11
- </template>
12
- ```
13
- :::
14
-
15
- ## 属性说明
16
- | 属性 | 类型 | 默认值 | 可选值 | 说明 |
17
- |------|------|--------|--------|------|
18
- | `type` | String | - | `primary`、`success`、`warning`、`danger` | 按钮类型 |
19
- | `size` | String | - | `large`、`medium`、`small`、`mini` | 按钮尺寸 |
20
- | `plain` | Boolean | false | - | 是否为朴素按钮 |
21
- | `disabled` | Boolean | false | - | 是否禁用按钮 |
22
- | `round` | Boolean | false | - | 是否为圆角按钮 |
23
-
24
- ## 事件说明
25
-
26
- | 事件名 | 参数 | 说明 |
27
- |--------|------|------|
28
- | `click` | - | 点击按钮时触发 |
29
-
30
- ## 示例
31
-
32
- ### 不同类型的按钮
33
- ::: demo 不同类型的按钮
34
- ```vue
35
- <template>
36
- <div style="display: flex; gap: 12px;">
37
- <XtButton type="primary">主要按钮</XtButton>
38
- <XtButton type="success">成功按钮</XtButton>
39
- <XtButton type="warning">警告按钮</XtButton>
40
- <XtButton type="danger">危险按钮</XtButton>
41
- </div>
42
- </template>
43
- ```
44
- :::
45
-
46
- ### 不同尺寸的按钮
47
- ::: demo 不同尺寸的按钮
48
- ```vue
49
- <template>
50
- <div style="display: flex; gap: 12px; align-items: center;">
51
- <XtButton size="large">大号按钮</XtButton>
52
- <XtButton>默认按钮</XtButton>
53
- <XtButton size="small">小号按钮</XtButton>
54
- </div>
55
- </template>
56
- ```
57
- :::
58
-
59
- ### 朴素按钮
60
-
61
- ::: demo 朴素按钮
62
- ```vue
63
- <template>
64
- <div style="display: flex; gap: 12px;">
65
- <XtButton type="primary" plain>朴素主按钮</XtButton>
66
- <XtButton type="success" plain>朴素成功按钮</XtButton>
67
- <XtButton type="warning" plain>朴素警告按钮</XtButton>
68
- <XtButton type="danger" plain>朴素危险按钮</XtButton>
69
- </div>
70
- </template>
71
- ```
72
- :::
73
-
74
- ### 状态按钮
75
- ::: demo 状态按钮
76
- ```vue
77
- <template>
78
- <div style="display: flex; gap: 12px;">
79
- <XtButton disabled>禁用按钮</XtButton>
80
- <XtButton round>圆角按钮</XtButton>
81
- <XtButton type="primary" disabled>禁用主按钮</XtButton>
82
- <XtButton type="primary" round>圆角主按钮</XtButton>
83
- </div>
84
- </template>
85
- ```
86
- :::
87
-
88
- ### 事件处理
89
-
90
- ::: demo 事件处理
91
- ```vue
92
- <template>
93
- <div>
94
- <XtButton type="primary" @click="handleClick">点击触发</XtButton>
95
- <p style="margin-top: 12px;">点击次数: {{ clickCount }}</p>
96
- </div>
97
- </template>
98
-
99
- <script>
100
- export default {
101
- data() {
102
- return {
103
- clickCount: 0
104
- }
105
- },
106
- methods: {
107
- handleClick() {
108
- this.clickCount++
109
- }
110
- }
111
- }
112
- </script>
113
- ```
114
- :::
1
+ ## XtButton 按钮组件
2
+
3
+ 按钮用于触发一个操作,如提交表单、打开对话框等。
4
+
5
+ ## 基本用法
6
+
7
+ ::: demo 基本用法
8
+ ```vue
9
+ <template>
10
+ <XtButton type="primary">主要按钮</XtButton>
11
+ </template>
12
+ ```
13
+ :::
14
+
15
+ ## 属性说明
16
+ | 属性 | 类型 | 默认值 | 可选值 | 说明 |
17
+ |------|------|--------|--------|------|
18
+ | `type` | String | - | `primary`、`success`、`warning`、`danger` | 按钮类型 |
19
+ | `size` | String | - | `large`、`medium`、`small`、`mini` | 按钮尺寸 |
20
+ | `plain` | Boolean | false | - | 是否为朴素按钮 |
21
+ | `disabled` | Boolean | false | - | 是否禁用按钮 |
22
+ | `round` | Boolean | false | - | 是否为圆角按钮 |
23
+
24
+ ## 事件说明
25
+
26
+ | 事件名 | 参数 | 说明 |
27
+ |--------|------|------|
28
+ | `click` | - | 点击按钮时触发 |
29
+
30
+ ## 示例
31
+
32
+ ### 不同类型的按钮
33
+ ::: demo 不同类型的按钮
34
+ ```vue
35
+ <template>
36
+ <div style="display: flex; gap: 12px;">
37
+ <XtButton type="primary">主要按钮</XtButton>
38
+ <XtButton type="success">成功按钮</XtButton>
39
+ <XtButton type="warning">警告按钮</XtButton>
40
+ <XtButton type="danger">危险按钮</XtButton>
41
+ </div>
42
+ </template>
43
+ ```
44
+ :::
45
+
46
+ ### 不同尺寸的按钮
47
+ ::: demo 不同尺寸的按钮
48
+ ```vue
49
+ <template>
50
+ <div style="display: flex; gap: 12px; align-items: center;">
51
+ <XtButton size="large">大号按钮</XtButton>
52
+ <XtButton>默认按钮</XtButton>
53
+ <XtButton size="small">小号按钮</XtButton>
54
+ </div>
55
+ </template>
56
+ ```
57
+ :::
58
+
59
+ ### 朴素按钮
60
+
61
+ ::: demo 朴素按钮
62
+ ```vue
63
+ <template>
64
+ <div style="display: flex; gap: 12px;">
65
+ <XtButton type="primary" plain>朴素主按钮</XtButton>
66
+ <XtButton type="success" plain>朴素成功按钮</XtButton>
67
+ <XtButton type="warning" plain>朴素警告按钮</XtButton>
68
+ <XtButton type="danger" plain>朴素危险按钮</XtButton>
69
+ </div>
70
+ </template>
71
+ ```
72
+ :::
73
+
74
+ ### 状态按钮
75
+ ::: demo 状态按钮
76
+ ```vue
77
+ <template>
78
+ <div style="display: flex; gap: 12px;">
79
+ <XtButton disabled>禁用按钮</XtButton>
80
+ <XtButton round>圆角按钮</XtButton>
81
+ <XtButton type="primary" disabled>禁用主按钮</XtButton>
82
+ <XtButton type="primary" round>圆角主按钮</XtButton>
83
+ </div>
84
+ </template>
85
+ ```
86
+ :::
87
+
88
+ ### 事件处理
89
+
90
+ ::: demo 事件处理
91
+ ```vue
92
+ <template>
93
+ <div>
94
+ <XtButton type="primary" @click="handleClick">点击触发</XtButton>
95
+ <p style="margin-top: 12px;">点击次数: {{ clickCount }}</p>
96
+ </div>
97
+ </template>
98
+
99
+ <script>
100
+ export default {
101
+ data() {
102
+ return {
103
+ clickCount: 0
104
+ }
105
+ },
106
+ methods: {
107
+ handleClick() {
108
+ this.clickCount++
109
+ }
110
+ }
111
+ }
112
+ </script>
113
+ ```
114
+ :::
@@ -1,104 +1,104 @@
1
- ## XtCardItem 卡片项组件
2
-
3
- 卡片项组件用于在卡片内展示一行数据,支持标签、数值和单位的展示。
4
-
5
- ## 基本用法
6
-
7
- ::: demo 基本用法
8
- ```vue
9
- <template>
10
- <XtCardItem title="销售额" label="销售额" value="12345" unit="元" style="width: 350px;"></XtCardItem>
11
- </template>
12
- ```
13
- :::
14
-
15
- ## 属性说明
16
- | 属性 | 类型 | 默认值 | 可选值 | 说明 |
17
- |------|------|--------|--------|------|
18
- | `iconType` | String | border | `border`、`icon` | 图标类型 |
19
- | `type` | String | primary | `primary`、`success`、`warning`、`danger` | 颜色类型 |
20
- | `label` | String | - | - | 标签文本 |
21
- | `value` | String / Number | - | - | 数值内容 |
22
- | `unit` | String | - | - | 数值单位 |
23
- | `icon` | String | - | - | Element Plus 图标名称 |
24
- | `iconAt` | String | right | `left`、`right`、`top`、`bottom` | 图标位置 |
25
- | `color` | String | - | - | 自定义颜色 |
26
-
27
- ## 插槽说明
28
-
29
- | 插槽名 | 说明 |
30
- |--------|------|
31
- | `label` | 自定义标签区域 |
32
- | `value` | 自定义数值区域 |
33
- | `unit` | 自定义单位区域 |
34
- | `icon` | 自定义图标区域 |
35
-
36
- ## 示例
37
-
38
- ### 边框型卡片项(默认)
39
-
40
- ::: demo 边框型卡片项
41
- ```vue
42
- <template>
43
- <XtCardItem label="销售额" value="12345" unit="元" type="primary"></XtCardItem>
44
- </template>
45
- ```
46
- :::
47
-
48
- ### 不同类型的边框卡片项
49
-
50
- ::: demo 不同类型的边框卡片项
51
- ```vue
52
- <template>
53
- <div style="display: flex; flex-direction: column; gap: 8px;">
54
- <XtCardItem label="成功" value="OK" type="success"></XtCardItem>
55
- <XtCardItem label="警告" value="Warning" type="warning"></XtCardItem>
56
- <XtCardItem label="危险" value="Error" type="danger"></XtCardItem>
57
- </div>
58
- </template>
59
- ```
60
- :::
61
-
62
- ### 自定义颜色
63
- ::: demo 自定义颜色
64
- ```vue
65
- <template>
66
- <XtCardItem label="自定义颜色" value="100%" color="#722ed1"></XtCardItem>
67
- </template>
68
- ```
69
- :::
70
-
71
- ### 自定义插槽
72
- ::: demo 自定义插槽
73
- ```vue
74
- <template>
75
- <XtCardItem>
76
- <template #label>
77
- <span style="color: #1890ff; font-weight: bold;">自定义标签</span>
78
- </template>
79
- <template #value>
80
- <span style="font-size: 18px;">9999</span>
81
- </template>
82
- <template #unit>
83
- <span style="color: #999;">自定义单位</span>
84
- </template>
85
- </XtCardItem>
86
- </template>
87
- ```
88
- :::
89
-
90
- ### 在卡片中使用
91
-
92
- ::: demo 在卡片中使用
93
- ```vue
94
- <template>
95
- <XtCard title="统计数据">
96
- <div style="display: flex; flex-direction: column; gap: 8px;">
97
- <XtCardItem label="总销售额" value="123456" unit="元"></XtCardItem>
98
- <XtCardItem label="订单数量" value="520" unit="单" type="success"></XtCardItem>
99
- <XtCardItem label="转化率" value="23.5" unit="%" type="warning"></XtCardItem>
100
- </div>
101
- </XtCard>
102
- </template>
103
- ```
104
- :::
1
+ ## XtCardItem 卡片项组件
2
+
3
+ 卡片项组件用于在卡片内展示一行数据,支持标签、数值和单位的展示。
4
+
5
+ ## 基本用法
6
+
7
+ ::: demo 基本用法
8
+ ```vue
9
+ <template>
10
+ <XtCardItem title="销售额" label="销售额" value="12345" unit="元" style="width: 350px;"></XtCardItem>
11
+ </template>
12
+ ```
13
+ :::
14
+
15
+ ## 属性说明
16
+ | 属性 | 类型 | 默认值 | 可选值 | 说明 |
17
+ |------|------|--------|--------|------|
18
+ | `iconType` | String | border | `border`、`icon` | 图标类型 |
19
+ | `type` | String | primary | `primary`、`success`、`warning`、`danger` | 颜色类型 |
20
+ | `label` | String | - | - | 标签文本 |
21
+ | `value` | String / Number | - | - | 数值内容 |
22
+ | `unit` | String | - | - | 数值单位 |
23
+ | `icon` | String | - | - | Element Plus 图标名称 |
24
+ | `iconAt` | String | right | `left`、`right`、`top`、`bottom` | 图标位置 |
25
+ | `color` | String | - | - | 自定义颜色 |
26
+
27
+ ## 插槽说明
28
+
29
+ | 插槽名 | 说明 |
30
+ |--------|------|
31
+ | `label` | 自定义标签区域 |
32
+ | `value` | 自定义数值区域 |
33
+ | `unit` | 自定义单位区域 |
34
+ | `icon` | 自定义图标区域 |
35
+
36
+ ## 示例
37
+
38
+ ### 边框型卡片项(默认)
39
+
40
+ ::: demo 边框型卡片项
41
+ ```vue
42
+ <template>
43
+ <XtCardItem label="销售额" value="12345" unit="元" type="primary"></XtCardItem>
44
+ </template>
45
+ ```
46
+ :::
47
+
48
+ ### 不同类型的边框卡片项
49
+
50
+ ::: demo 不同类型的边框卡片项
51
+ ```vue
52
+ <template>
53
+ <div style="display: flex; flex-direction: column; gap: 8px;">
54
+ <XtCardItem label="成功" value="OK" type="success"></XtCardItem>
55
+ <XtCardItem label="警告" value="Warning" type="warning"></XtCardItem>
56
+ <XtCardItem label="危险" value="Error" type="danger"></XtCardItem>
57
+ </div>
58
+ </template>
59
+ ```
60
+ :::
61
+
62
+ ### 自定义颜色
63
+ ::: demo 自定义颜色
64
+ ```vue
65
+ <template>
66
+ <XtCardItem label="自定义颜色" value="100%" color="#722ed1"></XtCardItem>
67
+ </template>
68
+ ```
69
+ :::
70
+
71
+ ### 自定义插槽
72
+ ::: demo 自定义插槽
73
+ ```vue
74
+ <template>
75
+ <XtCardItem>
76
+ <template #label>
77
+ <span style="color: #1890ff; font-weight: bold;">自定义标签</span>
78
+ </template>
79
+ <template #value>
80
+ <span style="font-size: 18px;">9999</span>
81
+ </template>
82
+ <template #unit>
83
+ <span style="color: #999;">自定义单位</span>
84
+ </template>
85
+ </XtCardItem>
86
+ </template>
87
+ ```
88
+ :::
89
+
90
+ ### 在卡片中使用
91
+
92
+ ::: demo 在卡片中使用
93
+ ```vue
94
+ <template>
95
+ <XtCard title="统计数据">
96
+ <div style="display: flex; flex-direction: column; gap: 8px;">
97
+ <XtCardItem label="总销售额" value="123456" unit="元"></XtCardItem>
98
+ <XtCardItem label="订单数量" value="520" unit="单" type="success"></XtCardItem>
99
+ <XtCardItem label="转化率" value="23.5" unit="%" type="warning"></XtCardItem>
100
+ </div>
101
+ </XtCard>
102
+ </template>
103
+ ```
104
+ :::