m8-codex-mcp 1.0.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 (110) hide show
  1. package/README.md +113 -0
  2. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/000-/347/273/204/344/273/266/345/272/223/344/270/213/350/275/275/344/275/277/347/224/250.md +188 -0
  3. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/001-actionsheet/345/212/250/344/275/234/351/235/242/346/235/277.md +460 -0
  4. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/004-amap/345/234/260/345/233/276.md +285 -0
  5. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/005-button/346/214/211/351/222/256.md +211 -0
  6. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/008-cell/345/215/225/345/205/203/346/240/274.md +213 -0
  7. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/009-checkbox/345/244/215/351/200/211/346/241/206.md +501 -0
  8. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/010-circle/347/216/257/345/275/242/350/277/233/345/272/246/346/235/241.md +168 -0
  9. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/011-datepicker/346/227/245/346/234/237/351/200/211/346/213/251.md +617 -0
  10. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/013-field/350/276/223/345/205/245/346/241/206.md +539 -0
  11. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/015-form/350/241/250/345/215/225.md +999 -0
  12. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/018-header/345/244/264/351/203/250/345/257/274/350/210/252/346/240/217.md +150 -0
  13. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/019-icon/345/233/276/346/240/207.md +133 -0
  14. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/020-loading/345/212/240/350/275/275.md +117 -0
  15. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/021-noticebar/351/200/232/347/237/245/346/240/217.md +152 -0
  16. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/022-numberkeyboard/346/225/260/345/255/227/351/224/256/347/233/230.md +427 -0
  17. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/023-pagination/345/210/206/351/241/265.md +212 -0
  18. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/024-panel/351/235/242/346/235/277.md +85 -0
  19. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/025-passwordinput/345/257/206/347/240/201/350/276/223/345/205/245/346/241/206.md +175 -0
  20. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/026-picker/351/200/211/346/213/251/345/231/250.md +519 -0
  21. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/027-popup/345/274/271/345/207/272/345/261/202.md +152 -0
  22. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/028-progress/350/277/233/345/272/246/346/235/241.md +103 -0
  23. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/029-radio/345/215/225/351/200/211/346/241/206.md +285 -0
  24. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/030-rate/350/257/204/345/210/206.md +189 -0
  25. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/031-search/346/220/234/347/264/242.md +217 -0
  26. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/032-slider/346/273/221/345/235/227.md +166 -0
  27. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/033-stepper/346/255/245/350/277/233/345/231/250.md +340 -0
  28. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/035-swipecell/346/273/221/345/212/250/345/215/225/345/205/203/346/240/274.md +265 -0
  29. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/036-switch/345/274/200/345/205/263.md +196 -0
  30. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/037-switchcell/345/274/200/345/205/263/345/215/225/345/205/203/346/240/274.md +115 -0
  31. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/038-tag/346/240/207/350/256/260.md +232 -0
  32. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/039-treeselect/345/210/206/347/261/273/351/200/211/346/213/251.md +631 -0
  33. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/040-uploader/346/226/207/344/273/266/344/270/212/344/274/240.md +531 -0
  34. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/041-verifycode/351/252/214/350/257/201/347/240/201.md +111 -0
  35. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/042-minirefresh/344/270/213/346/213/211/345/210/267/346/226/260.md +337 -0
  36. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/043-layout/345/270/203/345/261/200.md +150 -0
  37. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/044-image/345/233/276/347/211/207.md +144 -0
  38. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/045-toast/350/275/273/346/217/220/347/244/272.md +429 -0
  39. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/046-calendar/346/227/245/345/216/206.md +467 -0
  40. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/047-area/347/234/201/345/270/202/345/214/272/351/200/211/346/213/251.md +295 -0
  41. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/048-tab/346/240/207/347/255/276/351/241/265.md +577 -0
  42. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/049-dialog/345/274/271/345/207/272/346/241/206.md +491 -0
  43. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/050-dropdownmenu/344/270/213/346/213/211/350/217/234/345/215/225.md +265 -0
  44. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/051-notify/346/266/210/346/201/257/351/200/232/347/237/245.md +203 -0
  45. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/052-overlay/351/201/256/347/275/251/345/261/202.md +139 -0
  46. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/053-collapse/346/212/230/345/217/240/351/235/242/346/235/277.md +199 -0
  47. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/054-grid/345/256/253/346/240/274.md +183 -0
  48. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/055-countdown/345/200/222/350/256/241/346/227/266.md +289 -0
  49. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/056-divider/345/210/206/345/211/262/347/272/277.md +97 -0
  50. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/057-empty/347/251/272/347/212/266/346/200/201.md +146 -0
  51. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/058-imagepreview/345/233/276/347/211/207/351/242/204/350/247/210.md +292 -0
  52. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/059-lazyload/346/207/222/345/212/240/350/275/275.md +120 -0
  53. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/060-skeleton/351/252/250/346/236/266/345/261/217.md +114 -0
  54. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/061-steps/346/255/245/351/252/244/346/235/241.md +119 -0
  55. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/062-sticky/347/262/230/346/200/247/345/270/203/345/261/200.md +208 -0
  56. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/063-indexbar/347/264/242/345/274/225/346/240/217.md +161 -0
  57. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/064-sidebar/344/276/247/350/276/271/345/257/274/350/210/252.md +248 -0
  58. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/065-tabbar/346/240/207/347/255/276/346/240/217.md +314 -0
  59. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/066-badge/345/276/275/346/240/207.md +162 -0
  60. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/067-popover/346/260/224/346/263/241/345/274/271/345/207/272/346/241/206.md +325 -0
  61. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/068-cascader/347/272/247/350/201/224/351/200/211/346/213/251.md +360 -0
  62. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/069-selectperson/351/200/211/344/272/272/347/273/204/344/273/266.md +595 -0
  63. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/070-swipe/350/275/256/346/222/255.md +262 -0
  64. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/071-/345/233/275/351/231/205/345/214/226.md +51 -0
  65. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/072-easycalendar/346/227/245/345/216/206.md +132 -0
  66. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/073-qrcode/344/272/214/347/273/264/347/240/201.md +1538 -0
  67. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/074-imagescale/345/233/276/347/211/207/350/243/201/345/211/252.md +261 -0
  68. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/075-dragsort/346/213/226/346/213/275/346/216/222/345/272/217.md +161 -0
  69. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/076-chart/345/233/276/350/241/250.md +381 -0
  70. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/077-rtc/351/237/263/350/247/206/351/242/221.md +531 -0
  71. package/data/m8mpdoc/UI/347/273/204/344/273/266/345/272/223/078-table/350/241/250/346/240/274.md +849 -0
  72. package/data/m8mpdoc//345/205/270/345/236/213/346/241/210/344/276/213/003-/345/210/227/350/241/250/350/257/246/346/203/205.md +247 -0
  73. package/data/m8mpdoc//345/205/270/345/236/213/346/241/210/344/276/213/003-/345/210/227/350/241/250/350/257/246/346/203/205vue3.md +276 -0
  74. package/data/m8mpdoc//345/205/270/345/236/213/346/241/210/344/276/213/003-/350/241/250/345/215/225/346/217/220/344/272/244.md +130 -0
  75. package/data/m8mpdoc//345/205/270/345/236/213/346/241/210/344/276/213/003-/350/241/250/345/215/225/346/217/220/344/272/244vue3.md +115 -0
  76. package/data/m8mpdoc//346/240/270/345/277/203/351/200/232/347/224/250Util/345/267/245/345/205/267/345/272/223/Ajax/344/270/216/346/226/207/344/273/266/344/270/212/344/274/240.md +456 -0
  77. package/data/m8mpdoc//346/240/270/345/277/203/351/200/232/347/224/250Util/345/267/245/345/205/267/345/272/223//345/267/245/345/205/267/345/207/275/346/225/260/345/272/223.md +398 -0
  78. package/data/standards/01-project/naming.md +158 -0
  79. package/data/standards/01-project/structure.md +106 -0
  80. package/data/standards/01-project/version-detection.md +195 -0
  81. package/data/standards/02-vue/basic.md +242 -0
  82. package/data/standards/02-vue/component.md +299 -0
  83. package/data/standards/02-vue/examples.md +240 -0
  84. package/data/standards/02-vue/performance.md +74 -0
  85. package/data/standards/02-vue/state-management.md +293 -0
  86. package/data/standards/03-css/index.md +165 -0
  87. package/data/standards/04-api/ajax.md +178 -0
  88. package/data/standards/04-api/ejs-api.md +192 -0
  89. package/data/standards/04-api/util.md +166 -0
  90. package/data/standards/05-typescript/index.md +166 -0
  91. package/data/standards/06-mock/index.md +154 -0
  92. package/data/standards/07-router/index.md +141 -0
  93. package/data/standards/README.md +82 -0
  94. package/data/standards/_index.md +215 -0
  95. package/dist/index.d.ts +10 -0
  96. package/dist/index.d.ts.map +1 -0
  97. package/dist/index.js +2 -0
  98. package/dist/knowledge/index.d.ts +36 -0
  99. package/dist/knowledge/index.d.ts.map +1 -0
  100. package/dist/knowledge/index.js +1 -0
  101. package/dist/templates/vue2.d.ts +41 -0
  102. package/dist/templates/vue2.d.ts.map +1 -0
  103. package/dist/templates/vue2.js +1 -0
  104. package/dist/templates/vue3.d.ts +41 -0
  105. package/dist/templates/vue3.d.ts.map +1 -0
  106. package/dist/templates/vue3.js +1 -0
  107. package/dist/tools/generate_module_structure.d.ts +21 -0
  108. package/dist/tools/generate_module_structure.d.ts.map +1 -0
  109. package/dist/tools/generate_module_structure.js +1 -0
  110. package/package.json +47 -0
@@ -0,0 +1,460 @@
1
+ # 组件使用
2
+
3
+ ## actionsheet 动作面板
4
+
5
+ ### 介绍
6
+
7
+ - 底部弹起的模态面板,包含与当前情境相关的多个选项。
8
+
9
+ ### 代码演示
10
+
11
+ #### 基础用法
12
+
13
+ 动作面板通过 `actions` 属性来定义选项,`actions` 属性是一个由对象构成的数组,数组中的每个对象配置一列。
14
+
15
+ ::: ifdef M83
16
+
17
+ ```html
18
+ <em-cell is-link title="基础用法" @click="showTop = true" />
19
+ <em-actionsheet
20
+ title="标题"
21
+ @close="showTop = !showTop"
22
+ v-model="showTop"
23
+ :actions="actionsTop"
24
+ @select="onSelectTop"
25
+ />
26
+ <em-toast ref="emToast"></em-toast>
27
+ ```
28
+
29
+ ```js
30
+ export default {
31
+ data() {
32
+ return {
33
+ showTop: false,
34
+ actionsTop: [{ name: '选项一' }, { name: '选项二' }, { name: '选项三' }]
35
+ };
36
+ },
37
+ methods: {
38
+ onSelectTop(item) {
39
+ // 默认情况下点击选项时不会自动收起
40
+ // 可以通过 close-on-click-action 属性开启自动收起
41
+ this.showTop = false;
42
+ Toast({
43
+ zIndex: 3000,
44
+ message: item.name
45
+ });
46
+ }
47
+ }
48
+ };
49
+ ```
50
+
51
+ ::: endif
52
+ ::: ifdef M84
53
+
54
+ ```html
55
+ <em-cell is-link title="基础用法" @click="showTop = true" />
56
+ <em-actionsheet
57
+ title="标题"
58
+ @close="showTop = !showTop"
59
+ v-model="showTop"
60
+ :actions="actionsTop"
61
+ @select="onSelectTop"
62
+ />
63
+ <em-toast ref="emToastRef"></em-toast>
64
+ ```
65
+
66
+ ```js
67
+ import { ref } from 'vue';
68
+
69
+ const showTop = ref(false);
70
+ const actionsTop = [{ name: '选项一' }, { name: '选项二' }, { name: '选项三' }];
71
+
72
+ function onSelectTop(item) {
73
+ // 默认情况下点击选项时不会自动收起
74
+ // 可以通过 close-on-click-action 属性开启自动收起
75
+ showTop.value = false;
76
+ Toast({
77
+ zIndex: 3000,
78
+ message: item.name
79
+ });
80
+ }
81
+
82
+ const emToastRef = ref(null);
83
+
84
+ defineExpose({
85
+ emToastRef
86
+ });
87
+ ```
88
+
89
+ ::: endif
90
+
91
+ #### 展示取消按钮
92
+
93
+ 设置 `cancel-text` 属性后,会在底部展示取消按钮,点击后关闭当前面板并触发 `cancel` 事件。
94
+
95
+ ::: ifdef M83
96
+
97
+ ```html
98
+ <em-actionsheet
99
+ v-model="showBottom"
100
+ :actions="actionsTop"
101
+ cancel-text="取消"
102
+ close-on-click-action
103
+ @cancel="onCancel1"
104
+ @close="showBottom = !showBottom"
105
+ />
106
+ <em-toast ref="emToast"></em-toast>
107
+ ```
108
+
109
+ ```js
110
+ export default {
111
+ data() {
112
+ return {
113
+ showBottom: false,
114
+ actionsTop: [{ name: '选项一' }, { name: '选项二' }, { name: '选项三' }]
115
+ };
116
+ },
117
+ methods: {
118
+ onCancel1() {
119
+ Toast({
120
+ zIndex: 3000,
121
+ message: '取消'
122
+ });
123
+ this.showBottom = !this.showBottom;
124
+ }
125
+ }
126
+ };
127
+ ```
128
+
129
+ ::: endif
130
+ ::: ifdef M84
131
+
132
+ ```html
133
+ <em-actionsheet
134
+ v-model="showBottom"
135
+ :actions="actionsTop"
136
+ cancel-text="取消"
137
+ close-on-click-action
138
+ @cancel="onCancel1"
139
+ @close="showBottom = !showBottom"
140
+ />
141
+ <em-toast ref="emToastRef"></em-toast>
142
+ ```
143
+
144
+ ```js
145
+ import { ref } from 'vue';
146
+
147
+ const showBottom = ref(false);
148
+ const actionsTop = [{ name: '选项一' }, { name: '选项二' }, { name: '选项三' }];
149
+
150
+ function onCancel1() {
151
+ Toast({
152
+ zIndex: 3000,
153
+ message: '取消'
154
+ });
155
+ showBottom.value = !showBottom.value;
156
+ }
157
+
158
+ const emToastRef = ref(null);
159
+
160
+ defineExpose({
161
+ emToastRef
162
+ });
163
+ ```
164
+
165
+ ::: endif
166
+
167
+ #### 展示描述信息
168
+
169
+ 通过 `description` 可以在菜单顶部显示描述信息,通过选项的 `subname` 属性可以在选项文字的右侧展示描述信息。
170
+
171
+ ::: ifdef M83
172
+
173
+ ```html
174
+ <em-actionsheet
175
+ v-model="showLeft"
176
+ :actions="actionsLeft"
177
+ cancel-text="取消"
178
+ description="这是一段描述信息"
179
+ close-on-click-action
180
+ @cancel="onCancel2"
181
+ @close="showLeft = !showLeft"
182
+ />
183
+ <em-toast ref="emToast"></em-toast>
184
+ ```
185
+
186
+ ```js
187
+ export default {
188
+ data() {
189
+ return {
190
+ showLeft: false,
191
+ actionsLeft: [{ name: '选项一' }, { name: '选项二' }, { name: '选项三', subname: '描述信息' }]
192
+ };
193
+ },
194
+ methods: {
195
+ onCancel2() {
196
+ Toast({
197
+ zIndex: 3000,
198
+ message: '取消'
199
+ });
200
+ this.showLeft = !this.showLeft;
201
+ }
202
+ }
203
+ };
204
+ ```
205
+
206
+ ::: endif
207
+
208
+ ::: ifdef M84
209
+
210
+ ```html
211
+ <em-actionsheet
212
+ v-model="showLeft"
213
+ :actions="actionsLeft"
214
+ cancel-text="取消"
215
+ description="这是一段描述信息"
216
+ close-on-click-action
217
+ @cancel="onCancel2"
218
+ @close="showLeft = !showLeft"
219
+ />
220
+ <em-toast ref="emToastRef"></em-toast>
221
+ ```
222
+
223
+ ```js
224
+ import { ref } from 'vue';
225
+
226
+ const showLeft = ref(false);
227
+ const actionsLeft = [{ name: '选项一' }, { name: '选项二' }, { name: '选项三', subname: '描述信息' }];
228
+
229
+ function onCancel2() {
230
+ Toast({
231
+ zIndex: 3000,
232
+ message: '取消'
233
+ });
234
+ showLeft.value = !showLeft.value;
235
+ }
236
+
237
+ const emToastRef = ref(null);
238
+
239
+ defineExpose({
240
+ emToastRef
241
+ });
242
+ ```
243
+
244
+ ::: endif
245
+
246
+ #### 选项状态
247
+
248
+ 可以通过 `loading` 和 `disabled` 将选项设置为加载状态或禁用状态,或者通过`color`设置选项的颜色
249
+
250
+ ::: ifdef M83
251
+
252
+ ```html
253
+ <em-actionsheet
254
+ v-model="showStatus"
255
+ :actions="actionsStatus"
256
+ @close="showStatus = !showStatus"
257
+ @cancel="showStatus = !showStatus"
258
+ @select="onSelectTop"
259
+ cancel-text="取消"
260
+ close-on-click-action
261
+ />
262
+ <em-toast ref="emToast"></em-toast>
263
+ ```
264
+
265
+ ```js
266
+ export default {
267
+ data() {
268
+ return {
269
+ showStatus: false,
270
+ actionsStatus: [
271
+ { name: '着色选项', color: '#ee0a24' },
272
+ { name: '禁用选项', disabled: true },
273
+ { name: '加载选项', loading: true }
274
+ ]
275
+ };
276
+ },
277
+ methods: {
278
+ onSelectTop(item) {
279
+ // 默认情况下点击选项时不会自动收起
280
+ // 可以通过 close-on-click-action 属性开启自动收起
281
+ this.showStatus = false;
282
+ Toast({
283
+ zIndex: 3000,
284
+ message: item.name
285
+ });
286
+ }
287
+ }
288
+ };
289
+ ```
290
+
291
+ ::: endif
292
+
293
+ ::: ifdef M84
294
+
295
+ ```html
296
+ <em-actionsheet
297
+ v-model="showStatus"
298
+ :actions="actionsStatus"
299
+ @close="showStatus = !showStatus"
300
+ @cancel="showStatus = !showStatus"
301
+ @select="onSelectTop"
302
+ cancel-text="取消"
303
+ close-on-click-action
304
+ />
305
+ <em-toast ref="emToastRef"></em-toast>
306
+ ```
307
+
308
+ ```js
309
+ import { ref } from 'vue';
310
+
311
+ const showStatus = ref(false);
312
+ const actionsStatus = [
313
+ { name: '着色选项', color: '#ee0a24' },
314
+ { name: '禁用选项', disabled: true },
315
+ { name: '加载选项', loading: true }
316
+ ];
317
+
318
+ function onSelectTop(item) {
319
+ // 默认情况下点击选项时不会自动收起
320
+ // 可以通过 close-on-click-action 属性开启自动收起
321
+ showTop.value = false;
322
+ Toast({
323
+ zIndex: 3000,
324
+ message: item.name
325
+ });
326
+ }
327
+
328
+ const emToastRef = ref(null);
329
+
330
+ defineExpose({
331
+ emToastRef
332
+ });
333
+ ```
334
+
335
+ ::: endif
336
+
337
+ #### 自定义面板
338
+
339
+ 通过插槽可以自定义面板的展示内容,同时可以使用`title`属性展示标题栏
340
+
341
+ ```html
342
+ <em-actionsheet v-model="showZdy" @close="showZdy = !showZdy" title="标题">
343
+ <div class="content">内容</div>
344
+ </em-actionsheet>
345
+ ```
346
+
347
+ ::: ifdef M83
348
+
349
+ ```js
350
+ export default {
351
+ data() {
352
+ return {
353
+ showZdy: false
354
+ };
355
+ }
356
+ };
357
+ ```
358
+
359
+ ::: endif
360
+ ::: ifdef M84
361
+
362
+ ```js
363
+ import { ref } from 'vue';
364
+
365
+ const showZdy = ref(false);
366
+ ```
367
+
368
+ ::: endif
369
+
370
+ ```html
371
+ <style>
372
+ .content {
373
+ padding: 16px 16px 160px;
374
+ }
375
+ </style>
376
+ ```
377
+
378
+ ### API
379
+
380
+ #### Props
381
+
382
+ | 参数 | 说明 | 类型 | 默认值 |
383
+ | :--------------------------------------------------------------------------- | :--------------------: | :-------------- | :------ |
384
+ | v-model ::: ifdef M83 (value) ::: endif ::: ifdef M84 (modelValue) ::: endif | 是否显示动作面板 | boolean | `false` |
385
+ | actions | 面板选项列表 | Action[] | `[]` |
386
+ | title | 顶部标题 | string | - |
387
+ | cancel-text | 取消按钮文字 | string | - |
388
+ | description | 选项上方的描述信息 | string | - |
389
+ | z-index | z-index 层级 | number | 99 |
390
+ | closeable | 是否显示关闭图标 | boolean | `true` |
391
+ | close-icon | 关闭图标名称或图片链接 | string | `cross` |
392
+ | duration | 动画时长,单位毫秒 | number / string | `300` |
393
+ | round | 是否显示圆角 | boolean | `true` |
394
+ | overlay | 是否显示遮罩层 | boolean | `true` |
395
+ | close-on-click-action | 是否在点击选项后关闭 | boolean | `false` |
396
+ | close-on-click-overlay | 是否在点击遮罩层后关闭 | boolean | `true` |
397
+ | safe-area-inset-bottom | 是否开启底部安全区适配 | boolean | `true` |
398
+
399
+ #### Action 数据结构
400
+
401
+ `actions` 属性是一个由对象构成的数组,数组中的每个对象配置一列,对象可以包含以下值:
402
+
403
+ | 键名 | 说明 | 类型 |
404
+ | :-------- | :------------------------: | :------ |
405
+ | name | 标题 | string |
406
+ | subname | 二级标题 | string |
407
+ | color | 选项文字颜色 | string |
408
+ | className | 为对应列添加额外的 `class` | any |
409
+ | loading | 是否为加载状态 | boolean |
410
+ | disabled | 是否为禁用状态 | boolean |
411
+
412
+ #### Events
413
+
414
+ | 事件 | 说明 | 回调参数 |
415
+ | :------------ | :--------------------------------------: | :------------------------------------------- |
416
+ | select | 点击选项时触发,禁用或加载状态下不会触发 | action: Action 选项对应的对象, index: number |
417
+ | cancel | 点击取消按钮时触发 | - |
418
+ | open | 打开面板时触发 | - |
419
+ | close | 关闭面板时触发 | - |
420
+ | opened | 打开面板且动画结束后触发 | - |
421
+ | closed | 关闭面板且动画结束后触发 | - |
422
+ | click-overlay | 点击遮罩层时触发 | - |
423
+
424
+ #### Slots
425
+
426
+ | 名称 | 说明 |
427
+ | :---------- | :------------------: |
428
+ | default | 自定义面板的展示内容 |
429
+ | description | 自定义描述文案 |
430
+
431
+ ::: ifdef M83
432
+ <iframe
433
+ src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-actionsheet"
434
+ frameborder=0
435
+ allowfullscreen class="ui-showcase-iframe">
436
+ </iframe>
437
+ ::: endif
438
+ ::: ifdef M84
439
+ <iframe
440
+ src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-actionsheet"
441
+ frameborder=0
442
+ allowfullscreen class="ui-showcase-iframe">
443
+ </iframe>
444
+ ::: endif
445
+
446
+ <style>
447
+ .ui-showcase-iframe {
448
+ position: fixed;
449
+ right: 3.5vw;
450
+ top: 17%;
451
+ width: 375px;
452
+ height: 75vh;
453
+ box-shadow: 0 0 12px 6px #eee;
454
+ border-radius: 15px;
455
+ }
456
+ .main .markdown-body {
457
+ padding: 45px;
458
+ width: calc(97vw - 661px);
459
+ }
460
+ </style>