xt-element-ui 2.0.0 → 2.0.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.
@@ -1,154 +1,154 @@
1
- ## XtIcon 图标组件
2
-
3
- 图标组件支持多种图标类型:ElementUI 字体图标、SVG Sprite、内联 SVG 和自定义字体图标。
4
-
5
- ## 基本用法
6
-
7
- ::: demo 基本用法
8
- ```vue
9
- <template>
10
- <XtIcon name="el-icon-search" />
11
- </template>
12
- ```
13
- :::
14
-
15
- ## 属性说明
16
-
17
- | 属性 | 类型 | 默认值 | 说明 |
18
- |------|------|--------|------|
19
- | `name` | String | - | 图标名称或 SVG 内容 |
20
- | `size` | String / Number | - | 图标大小 |
21
- | `color` | String | - | 图标颜色 |
22
- | `spin` | Boolean | `false` | 是否旋转 |
23
-
24
- ## 图标类型
25
-
26
- ### ElementUI 字体图标
27
-
28
- 以 `el-icon-` 开头的图标名称会自动识别为 ElementUI 图标:
29
-
30
- ::: demo ElementUI 图标
31
- ```vue
32
- <template>
33
- <div style="display: flex; gap: 16px;">
34
- <XtIcon name="el-icon-search" />
35
- <XtIcon name="el-icon-edit" />
36
- <XtIcon name="el-icon-delete" />
37
- <XtIcon name="el-icon-user" />
38
- </div>
39
- </template>
40
- ```
41
- :::
42
-
43
- ### SVG Sprite
44
-
45
- 使用 `#` 或 `svg:` 前缀引用 SVG Sprite:
46
-
47
- ::: demo SVG Sprite
48
- ```vue
49
- <template>
50
- <XtIcon name="#icon-home" />
51
- </template>
52
- ```
53
- :::
54
-
55
- ### 内联 SVG
56
-
57
- 直接传入完整的 SVG 字符串:
58
-
59
- ::: demo 内联 SVG
60
- ```vue
61
- <template>
62
- <XtIcon :name="svgContent" />
63
- </template>
64
-
65
- <script>
66
- export default {
67
- data() {
68
- return {
69
- svgContent: '<svg viewBox="0 0 24 24"><path fill="currentColor" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>'
70
- }
71
- }
72
- }
73
- </script>
74
- ```
75
- :::
76
-
77
- ### 自定义字体图标
78
-
79
- 非上述类型的图标名称会作为自定义字体图标类名处理:
80
-
81
- ::: demo 自定义字体图标
82
- ```vue
83
- <template>
84
- <XtIcon name="custom-icon-star" />
85
- </template>
86
- ```
87
- :::
88
-
89
- ## 示例
90
-
91
- ### 不同尺寸
92
-
93
- ::: demo 不同尺寸
94
- ```vue
95
- <template>
96
- <div style="display: flex; align-items: center; gap: 16px;">
97
- <XtIcon name="el-icon-search" :size="16" />
98
- <XtIcon name="el-icon-search" :size="24" />
99
- <XtIcon name="el-icon-search" :size="32" />
100
- <XtIcon name="el-icon-search" size="40px" />
101
- </div>
102
- </template>
103
- ```
104
- :::
105
-
106
- ### 不同颜色
107
-
108
- ::: demo 不同颜色
109
- ```vue
110
- <template>
111
- <div style="display: flex; gap: 16px;">
112
- <XtIcon name="el-icon-search" color="#1890ff" />
113
- <XtIcon name="el-icon-search" color="#52c41a" />
114
- <XtIcon name="el-icon-search" color="#faad14" />
115
- <XtIcon name="el-icon-search" color="#f5222d" />
116
- </div>
117
- </template>
118
- ```
119
- :::
120
-
121
- ### 旋转动画
122
-
123
- ::: demo 旋转动画
124
- ```vue
125
- <template>
126
- <XtIcon name="el-icon-loading" spin />
127
- </template>
128
- ```
129
- :::
130
-
131
- ### 配合按钮使用
132
-
133
- ::: demo 配合按钮使用
134
- ```vue
135
- <template>
136
- <XtButton type="primary">
137
- <XtIcon name="el-icon-search" />
138
- 搜索
139
- </XtButton>
140
- </template>
141
- ```
142
- :::
143
-
144
- ## 全局注册前缀
145
-
146
- 对于自定义字体图标,可以注册前缀以避免自动添加 `ex-icon` 类名:
147
-
148
- ```javascript
149
- import XtIcon from 'xt-element-ui/src/components/xt-icon'
150
-
151
- XtIcon.registerPrefix('custom-')
152
- ```
153
-
1
+ ## XtIcon 图标组件
2
+
3
+ 图标组件支持多种图标类型:ElementUI 字体图标、SVG Sprite、内联 SVG 和自定义字体图标。
4
+
5
+ ## 基本用法
6
+
7
+ ::: demo 基本用法
8
+ ```vue
9
+ <template>
10
+ <XtIcon name="el-icon-search" />
11
+ </template>
12
+ ```
13
+ :::
14
+
15
+ ## 属性说明
16
+
17
+ | 属性 | 类型 | 默认值 | 说明 |
18
+ |------|------|--------|------|
19
+ | `name` | String | - | 图标名称或 SVG 内容 |
20
+ | `size` | String / Number | - | 图标大小 |
21
+ | `color` | String | - | 图标颜色 |
22
+ | `spin` | Boolean | `false` | 是否旋转 |
23
+
24
+ ## 图标类型
25
+
26
+ ### ElementUI 字体图标
27
+
28
+ 以 `el-icon-` 开头的图标名称会自动识别为 ElementUI 图标:
29
+
30
+ ::: demo ElementUI 图标
31
+ ```vue
32
+ <template>
33
+ <div style="display: flex; gap: 16px;">
34
+ <XtIcon name="el-icon-search" />
35
+ <XtIcon name="el-icon-edit" />
36
+ <XtIcon name="el-icon-delete" />
37
+ <XtIcon name="el-icon-user" />
38
+ </div>
39
+ </template>
40
+ ```
41
+ :::
42
+
43
+ ### SVG Sprite
44
+
45
+ 使用 `#` 或 `svg:` 前缀引用 SVG Sprite:
46
+
47
+ ::: demo SVG Sprite
48
+ ```vue
49
+ <template>
50
+ <XtIcon name="#icon-home" />
51
+ </template>
52
+ ```
53
+ :::
54
+
55
+ ### 内联 SVG
56
+
57
+ 直接传入完整的 SVG 字符串:
58
+
59
+ ::: demo 内联 SVG
60
+ ```vue
61
+ <template>
62
+ <XtIcon :name="svgContent" />
63
+ </template>
64
+
65
+ <script>
66
+ export default {
67
+ data() {
68
+ return {
69
+ svgContent: '<svg viewBox="0 0 24 24"><path fill="currentColor" d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm-2 15l-5-5 1.41-1.41L10 14.17l7.59-7.59L19 8l-9 9z"/></svg>'
70
+ }
71
+ }
72
+ }
73
+ </script>
74
+ ```
75
+ :::
76
+
77
+ ### 自定义字体图标
78
+
79
+ 非上述类型的图标名称会作为自定义字体图标类名处理:
80
+
81
+ ::: demo 自定义字体图标
82
+ ```vue
83
+ <template>
84
+ <XtIcon name="custom-icon-star" />
85
+ </template>
86
+ ```
87
+ :::
88
+
89
+ ## 示例
90
+
91
+ ### 不同尺寸
92
+
93
+ ::: demo 不同尺寸
94
+ ```vue
95
+ <template>
96
+ <div style="display: flex; align-items: center; gap: 16px;">
97
+ <XtIcon name="el-icon-search" :size="16" />
98
+ <XtIcon name="el-icon-search" :size="24" />
99
+ <XtIcon name="el-icon-search" :size="32" />
100
+ <XtIcon name="el-icon-search" size="40px" />
101
+ </div>
102
+ </template>
103
+ ```
104
+ :::
105
+
106
+ ### 不同颜色
107
+
108
+ ::: demo 不同颜色
109
+ ```vue
110
+ <template>
111
+ <div style="display: flex; gap: 16px;">
112
+ <XtIcon name="el-icon-search" color="#1890ff" />
113
+ <XtIcon name="el-icon-search" color="#52c41a" />
114
+ <XtIcon name="el-icon-search" color="#faad14" />
115
+ <XtIcon name="el-icon-search" color="#f5222d" />
116
+ </div>
117
+ </template>
118
+ ```
119
+ :::
120
+
121
+ ### 旋转动画
122
+
123
+ ::: demo 旋转动画
124
+ ```vue
125
+ <template>
126
+ <XtIcon name="el-icon-loading" spin />
127
+ </template>
128
+ ```
129
+ :::
130
+
131
+ ### 配合按钮使用
132
+
133
+ ::: demo 配合按钮使用
134
+ ```vue
135
+ <template>
136
+ <XtButton type="primary">
137
+ <XtIcon name="el-icon-search" />
138
+ 搜索
139
+ </XtButton>
140
+ </template>
141
+ ```
142
+ :::
143
+
144
+ ## 全局注册前缀
145
+
146
+ 对于自定义字体图标,可以注册前缀以避免自动添加 `ex-icon` 类名:
147
+
148
+ ```javascript
149
+ import XtIcon from 'xt-element-ui/src/components/xt-icon'
150
+
151
+ XtIcon.registerPrefix('custom-')
152
+ ```
153
+
154
154
  注册后,所有以 `custom-` 开头的图标名称不会自动添加 `ex-icon` 类名。
@@ -1,145 +1,145 @@
1
- ## XtLine 折线图组件
2
-
3
- 基于 ECharts 封装的折线图组件,支持面积图、平滑曲线等功能。
4
-
5
- ## 基本用法
6
-
7
- ::: demo 基本用法
8
- ```vue
9
- <template>
10
- <XtLine :chart-data="chartData" />
11
- </template>
12
-
13
- <script>
14
- export default {
15
- data() {
16
- return {
17
- chartData: [
18
- { value: 53, label: "张三" },
19
- { value: 10, label: "李四" },
20
- { value: 60, label: "宋五" }
21
- ]
22
- }
23
- }
24
- }
25
- </script>
26
- ```
27
- :::
28
-
29
- ## 属性说明
30
-
31
- | 属性 | 类型 | 默认值 | 说明 |
32
- |------|------|--------|------|
33
- | `chartData` | Array | - | 图表数据,格式为 `[{ label, value }]` |
34
- | `fieldKeys` | Object | `{ label: "label", value: "value", data: "data" }` | 字段映射配置 |
35
- | `theme` | String | - | 主题,`dark` 或 `default` |
36
- | `size` | String | `medium` | 尺寸,`small` / `medium` / `large` |
37
- | `isArea` | Boolean | `false` | 是否显示面积图 |
38
- | `unit` | String | `""` | 数据单位 |
39
- | `intervalvalue` | Number | `0` | X 轴标签间隔,0 表示全部显示 |
40
- | `simpleMode` | Boolean | `false` | 是否启用极简模式(隐藏图例、坐标轴等) |
41
-
42
- ## 示例
43
-
44
- ### 面积图
45
-
46
- ::: demo 面积图
47
- ```vue
48
- <template>
49
- <XtLine :chart-data="chartData" :is-area="true" />
50
- </template>
51
-
52
- <script>
53
- export default {
54
- data() {
55
- return {
56
- chartData: [
57
- { value: 53, label: "1月" },
58
- { value: 60, label: "2月" },
59
- { value: 78, label: "3月" },
60
- { value: 82, label: "4月" },
61
- { value: 95, label: "5月" }
62
- ]
63
- }
64
- }
65
- }
66
- </script>
67
- ```
68
- :::
69
-
70
- ### 极简模式
71
-
72
- ::: demo 极简模式
73
- ```vue
74
- <template>
75
- <XtLine :chart-data="chartData" simple-mode />
76
- </template>
77
-
78
- <script>
79
- export default {
80
- data() {
81
- return {
82
- chartData: [
83
- { value: 53, label: "A" },
84
- { value: 60, label: "B" },
85
- { value: 78, label: "C" }
86
- ]
87
- }
88
- }
89
- }
90
- </script>
91
- ```
92
- :::
93
-
94
- ### 自定义字段映射
95
-
96
- ::: demo 自定义字段映射
97
- ```vue
98
- <template>
99
- <XtLine :chart-data="chartData" :field-keys="{ label: 'month', value: 'amount' }" />
100
- </template>
101
-
102
- <script>
103
- export default {
104
- data() {
105
- return {
106
- chartData: [
107
- { month: "1月", amount: 53 },
108
- { month: "2月", amount: 60 },
109
- { month: "3月", amount: 78 }
110
- ]
111
- }
112
- }
113
- }
114
- </script>
115
- ```
116
- :::
117
-
118
- ### 暗色主题
119
-
120
- ::: demo 暗色主题
121
- ```vue
122
- <template>
123
- <XtLine :chart-data="chartData" theme="dark" />
124
- </template>
125
-
126
- <script>
127
- export default {
128
- data() {
129
- return {
130
- chartData: [
131
- { value: 53, label: "张三" },
132
- { value: 60, label: "李四" },
133
- { value: 78, label: "王五" }
134
- ]
135
- }
136
- }
137
- }
138
- </script>
139
- ```
140
- :::
141
-
142
- ## 注意事项
143
-
144
- - 折线图默认使用平滑曲线
1
+ ## XtLine 折线图组件
2
+
3
+ 基于 ECharts 封装的折线图组件,支持面积图、平滑曲线等功能。
4
+
5
+ ## 基本用法
6
+
7
+ ::: demo 基本用法
8
+ ```vue
9
+ <template>
10
+ <XtLine :chart-data="chartData" />
11
+ </template>
12
+
13
+ <script>
14
+ export default {
15
+ data() {
16
+ return {
17
+ chartData: [
18
+ { value: 53, label: "张三" },
19
+ { value: 10, label: "李四" },
20
+ { value: 60, label: "宋五" }
21
+ ]
22
+ }
23
+ }
24
+ }
25
+ </script>
26
+ ```
27
+ :::
28
+
29
+ ## 属性说明
30
+
31
+ | 属性 | 类型 | 默认值 | 说明 |
32
+ |------|------|--------|------|
33
+ | `chartData` | Array | - | 图表数据,格式为 `[{ label, value }]` |
34
+ | `fieldKeys` | Object | `{ label: "label", value: "value", data: "data" }` | 字段映射配置 |
35
+ | `theme` | String | - | 主题,`dark` 或 `default` |
36
+ | `size` | String | `medium` | 尺寸,`small` / `medium` / `large` |
37
+ | `isArea` | Boolean | `false` | 是否显示面积图 |
38
+ | `unit` | String | `""` | 数据单位 |
39
+ | `intervalvalue` | Number | `0` | X 轴标签间隔,0 表示全部显示 |
40
+ | `simpleMode` | Boolean | `false` | 是否启用极简模式(隐藏图例、坐标轴等) |
41
+
42
+ ## 示例
43
+
44
+ ### 面积图
45
+
46
+ ::: demo 面积图
47
+ ```vue
48
+ <template>
49
+ <XtLine :chart-data="chartData" :is-area="true" />
50
+ </template>
51
+
52
+ <script>
53
+ export default {
54
+ data() {
55
+ return {
56
+ chartData: [
57
+ { value: 53, label: "1月" },
58
+ { value: 60, label: "2月" },
59
+ { value: 78, label: "3月" },
60
+ { value: 82, label: "4月" },
61
+ { value: 95, label: "5月" }
62
+ ]
63
+ }
64
+ }
65
+ }
66
+ </script>
67
+ ```
68
+ :::
69
+
70
+ ### 极简模式
71
+
72
+ ::: demo 极简模式
73
+ ```vue
74
+ <template>
75
+ <XtLine :chart-data="chartData" simple-mode />
76
+ </template>
77
+
78
+ <script>
79
+ export default {
80
+ data() {
81
+ return {
82
+ chartData: [
83
+ { value: 53, label: "A" },
84
+ { value: 60, label: "B" },
85
+ { value: 78, label: "C" }
86
+ ]
87
+ }
88
+ }
89
+ }
90
+ </script>
91
+ ```
92
+ :::
93
+
94
+ ### 自定义字段映射
95
+
96
+ ::: demo 自定义字段映射
97
+ ```vue
98
+ <template>
99
+ <XtLine :chart-data="chartData" :field-keys="{ label: 'month', value: 'amount' }" />
100
+ </template>
101
+
102
+ <script>
103
+ export default {
104
+ data() {
105
+ return {
106
+ chartData: [
107
+ { month: "1月", amount: 53 },
108
+ { month: "2月", amount: 60 },
109
+ { month: "3月", amount: 78 }
110
+ ]
111
+ }
112
+ }
113
+ }
114
+ </script>
115
+ ```
116
+ :::
117
+
118
+ ### 暗色主题
119
+
120
+ ::: demo 暗色主题
121
+ ```vue
122
+ <template>
123
+ <XtLine :chart-data="chartData" theme="dark" />
124
+ </template>
125
+
126
+ <script>
127
+ export default {
128
+ data() {
129
+ return {
130
+ chartData: [
131
+ { value: 53, label: "张三" },
132
+ { value: 60, label: "李四" },
133
+ { value: 78, label: "王五" }
134
+ ]
135
+ }
136
+ }
137
+ }
138
+ </script>
139
+ ```
140
+ :::
141
+
142
+ ## 注意事项
143
+
144
+ - 折线图默认使用平滑曲线
145
145
  - 数据值大于等于 10000 时会自动转换为"万"单位显示