m8-mcp-server 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 (160) hide show
  1. package/README.md +67 -0
  2. package/bin/m8-mcp.js +2 -0
  3. package/dist/constants.js +1 -0
  4. package/dist/data/ejs-doc/api_audio/api_audio.md +225 -0
  5. package/dist/data/ejs-doc/api_auth/api_auth.md +256 -0
  6. package/dist/data/ejs-doc/api_contact/api_contact.md +295 -0
  7. package/dist/data/ejs-doc/api_contact/images/component_contact.jpg +0 -0
  8. package/dist/data/ejs-doc/api_device/api_device.md +761 -0
  9. package/dist/data/ejs-doc/api_event/api_event.md +244 -0
  10. package/dist/data/ejs-doc/api_global/api_global.md +440 -0
  11. package/dist/data/ejs-doc/api_io/api_io.md +369 -0
  12. package/dist/data/ejs-doc/api_navigator/api_navigator.md +654 -0
  13. package/dist/data/ejs-doc/api_navigator/images/navigator.backbtn.png +0 -0
  14. package/dist/data/ejs-doc/api_navigator/images/navigator.hide.png +0 -0
  15. package/dist/data/ejs-doc/api_navigator/images/navigator.hidestatus.png +0 -0
  16. package/dist/data/ejs-doc/api_navigator/images/navigator.leftarrowbtn.jpg +0 -0
  17. package/dist/data/ejs-doc/api_navigator/images/navigator.leftbtn.png +0 -0
  18. package/dist/data/ejs-doc/api_navigator/images/navigator.leftbtnimg.png +0 -0
  19. package/dist/data/ejs-doc/api_navigator/images/navigator.multititle.jpg +0 -0
  20. package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtn.png +0 -0
  21. package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtn2.png +0 -0
  22. package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtnimg.png +0 -0
  23. package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtnimg2.png +0 -0
  24. package/dist/data/ejs-doc/api_navigator/images/navigator.rightmenu.png +0 -0
  25. package/dist/data/ejs-doc/api_navigator/images/navigator.searchbar.png +0 -0
  26. package/dist/data/ejs-doc/api_navigator/images/navigator.subtitle.jpg +0 -0
  27. package/dist/data/ejs-doc/api_navigator/images/navigator.title.png +0 -0
  28. package/dist/data/ejs-doc/api_page/api_page.md +261 -0
  29. package/dist/data/ejs-doc/api_runtime/api_runtime.md +788 -0
  30. package/dist/data/ejs-doc/api_storage/api_storage.md +320 -0
  31. package/dist/data/ejs-doc/api_stream/api_stream.md +152 -0
  32. package/dist/data/ejs-doc/api_stream/images/body_multiform.jpg +0 -0
  33. package/dist/data/ejs-doc/api_ui/api_ui.md +836 -0
  34. package/dist/data/ejs-doc/api_ui/images/ui.popwindow.png +0 -0
  35. package/dist/data/ejs-doc/api_ui/images/ui_actionsheet.png +0 -0
  36. package/dist/data/ejs-doc/api_ui/images/ui_alert.png +0 -0
  37. package/dist/data/ejs-doc/api_ui/images/ui_confirm.png +0 -0
  38. package/dist/data/ejs-doc/api_ui/images/ui_pickDateTime.png +0 -0
  39. package/dist/data/ejs-doc/api_ui/images/ui_pickdate.png +0 -0
  40. package/dist/data/ejs-doc/api_ui/images/ui_pickmonth.png +0 -0
  41. package/dist/data/ejs-doc/api_ui/images/ui_picktime.png +0 -0
  42. package/dist/data/ejs-doc/api_ui/images/ui_poppicker.png +0 -0
  43. package/dist/data/ejs-doc/api_ui/images/ui_poppicker2.png +0 -0
  44. package/dist/data/ejs-doc/api_ui/images/ui_poppicker3.png +0 -0
  45. package/dist/data/ejs-doc/api_ui/images/ui_prompt.png +0 -0
  46. package/dist/data/ejs-doc/api_ui/images/ui_select.png +0 -0
  47. package/dist/data/ejs-doc/api_ui/images/ui_select2.png +0 -0
  48. package/dist/data/ejs-doc/api_ui/images/ui_select3.png +0 -0
  49. package/dist/data/ejs-doc/api_ui/images/ui_showdebugdialog.png +0 -0
  50. package/dist/data/ejs-doc/api_ui/images/ui_showwaiting.png +0 -0
  51. package/dist/data/ejs-doc/api_ui/images/ui_toast.png +0 -0
  52. package/dist/data/ejs-doc/api_ui/images/ui_toastAndEvent.png +0 -0
  53. package/dist/data/ejs-doc/api_util/api_util.md +615 -0
  54. package/dist/data/ejs-doc/api_util/images/util.playvideo.png +0 -0
  55. package/dist/data/ejs-doc/api_util/images/util.previmage.png +0 -0
  56. package/dist/data/ejs-doc/api_util/images/util.selectfile.png +0 -0
  57. package/dist/data/ejs-doc/api_util/images/util.selectimage.png +0 -0
  58. package/dist/data/m8mpdoc-develop/003-/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
  59. package/dist/data/m8mpdoc-develop/003-/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
  60. package/dist/data/m8mpdoc-develop/003-/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
  61. package/dist/data/m8mpdoc-develop/003-/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
  62. package/dist/data/m8mpdoc-develop/005-/346/240/270/345/277/203/351/200/232/347/224/250Util/000-/346/240/270/345/277/203/346/226/271/346/263/225.md +398 -0
  63. package/dist/data/m8mpdoc-develop/005-/346/240/270/345/277/203/351/200/232/347/224/250Util/001-Ajax/344/270/216/346/226/207/344/273/266/344/270/212/344/274/240.md +456 -0
  64. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/000-charset.md +128 -0
  65. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/001-base64.md +142 -0
  66. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/002-date.md +210 -0
  67. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/004-math.md +85 -0
  68. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/006-sha1.md +21 -0
  69. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/007-sha256.md +36 -0
  70. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/008-storage.md +128 -0
  71. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/009-string.md +148 -0
  72. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/010-Util/346/211/251/345/261/225/346/214/207/345/215/227.md +76 -0
  73. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/011-cookie.md +59 -0
  74. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/012-util-sm.md +95 -0
  75. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-1.baseapi.md +76 -0
  76. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.network.md +202 -0
  77. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.socketTask.md +92 -0
  78. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-3.uiapi.md +412 -0
  79. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-4.eventapi.md +146 -0
  80. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-5.otherapi.md +137 -0
  81. package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/014-util-mpVerifyManager.md +363 -0
  82. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/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
  83. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/001-actionsheet/345/212/250/344/275/234/351/235/242/346/235/277.md +460 -0
  84. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/004-amap/345/234/260/345/233/276.md +285 -0
  85. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/005-button/346/214/211/351/222/256.md +211 -0
  86. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/008-cell/345/215/225/345/205/203/346/240/274.md +213 -0
  87. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/009-checkbox/345/244/215/351/200/211/346/241/206.md +501 -0
  88. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/010-circle/347/216/257/345/275/242/350/277/233/345/272/246/346/235/241.md +168 -0
  89. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/011-datepicker/346/227/245/346/234/237/351/200/211/346/213/251.md +617 -0
  90. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/013-field/350/276/223/345/205/245/346/241/206.md +539 -0
  91. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/015-form/350/241/250/345/215/225.md +999 -0
  92. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/018-header/345/244/264/351/203/250/345/257/274/350/210/252/346/240/217.md +150 -0
  93. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/019-icon/345/233/276/346/240/207.md +133 -0
  94. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/020-loading/345/212/240/350/275/275.md +117 -0
  95. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/021-noticebar/351/200/232/347/237/245/346/240/217.md +152 -0
  96. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/022-numberkeyboard/346/225/260/345/255/227/351/224/256/347/233/230.md +427 -0
  97. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/023-pagination/345/210/206/351/241/265.md +212 -0
  98. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/024-panel/351/235/242/346/235/277.md +85 -0
  99. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/025-passwordinput/345/257/206/347/240/201/350/276/223/345/205/245/346/241/206.md +175 -0
  100. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/026-picker/351/200/211/346/213/251/345/231/250.md +519 -0
  101. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/027-popup/345/274/271/345/207/272/345/261/202.md +152 -0
  102. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/028-progress/350/277/233/345/272/246/346/235/241.md +103 -0
  103. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/029-radio/345/215/225/351/200/211/346/241/206.md +285 -0
  104. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/030-rate/350/257/204/345/210/206.md +189 -0
  105. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/031-search/346/220/234/347/264/242.md +217 -0
  106. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/032-slider/346/273/221/345/235/227.md +166 -0
  107. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/033-stepper/346/255/245/350/277/233/345/231/250.md +340 -0
  108. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/035-swipecell/346/273/221/345/212/250/345/215/225/345/205/203/346/240/274.md +265 -0
  109. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/036-switch/345/274/200/345/205/263.md +196 -0
  110. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/037-switchcell/345/274/200/345/205/263/345/215/225/345/205/203/346/240/274.md +115 -0
  111. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/038-tag/346/240/207/350/256/260.md +232 -0
  112. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/039-treeselect/345/210/206/347/261/273/351/200/211/346/213/251.md +631 -0
  113. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/040-uploader/346/226/207/344/273/266/344/270/212/344/274/240.md +531 -0
  114. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/041-verifycode/351/252/214/350/257/201/347/240/201.md +111 -0
  115. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/042-minirefresh/344/270/213/346/213/211/345/210/267/346/226/260.md +337 -0
  116. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/043-layout/345/270/203/345/261/200.md +150 -0
  117. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/044-image/345/233/276/347/211/207.md +144 -0
  118. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/045-toast/350/275/273/346/217/220/347/244/272.md +429 -0
  119. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/046-calendar/346/227/245/345/216/206.md +467 -0
  120. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/047-area/347/234/201/345/270/202/345/214/272/351/200/211/346/213/251.md +295 -0
  121. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/048-tab/346/240/207/347/255/276/351/241/265.md +577 -0
  122. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/049-dialog/345/274/271/345/207/272/346/241/206.md +491 -0
  123. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/050-dropdownmenu/344/270/213/346/213/211/350/217/234/345/215/225.md +265 -0
  124. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/051-notify/346/266/210/346/201/257/351/200/232/347/237/245.md +203 -0
  125. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/052-overlay/351/201/256/347/275/251/345/261/202.md +139 -0
  126. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/053-collapse/346/212/230/345/217/240/351/235/242/346/235/277.md +199 -0
  127. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/054-grid/345/256/253/346/240/274.md +183 -0
  128. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/055-countdown/345/200/222/350/256/241/346/227/266.md +289 -0
  129. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/056-divider/345/210/206/345/211/262/347/272/277.md +97 -0
  130. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/057-empty/347/251/272/347/212/266/346/200/201.md +146 -0
  131. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/058-imagepreview/345/233/276/347/211/207/351/242/204/350/247/210.md +292 -0
  132. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/059-lazyload/346/207/222/345/212/240/350/275/275.md +120 -0
  133. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/060-skeleton/351/252/250/346/236/266/345/261/217.md +114 -0
  134. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/061-steps/346/255/245/351/252/244/346/235/241.md +119 -0
  135. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/062-sticky/347/262/230/346/200/247/345/270/203/345/261/200.md +208 -0
  136. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/063-indexbar/347/264/242/345/274/225/346/240/217.md +161 -0
  137. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/064-sidebar/344/276/247/350/276/271/345/257/274/350/210/252.md +248 -0
  138. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/065-tabbar/346/240/207/347/255/276/346/240/217.md +314 -0
  139. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/066-badge/345/276/275/346/240/207.md +162 -0
  140. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/067-popover/346/260/224/346/263/241/345/274/271/345/207/272/346/241/206.md +325 -0
  141. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/068-cascader/347/272/247/350/201/224/351/200/211/346/213/251.md +360 -0
  142. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/069-selectperson/351/200/211/344/272/272/347/273/204/344/273/266.md +595 -0
  143. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/070-swipe/350/275/256/346/222/255.md +262 -0
  144. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/071-/345/233/275/351/231/205/345/214/226.md +51 -0
  145. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/072-easycalendar/346/227/245/345/216/206.md +132 -0
  146. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/073-qrcode/344/272/214/347/273/264/347/240/201.md +1538 -0
  147. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/074-imagescale/345/233/276/347/211/207/350/243/201/345/211/252.md +261 -0
  148. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/075-dragsort/346/213/226/346/213/275/346/216/222/345/272/217.md +161 -0
  149. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/076-chart/345/233/276/350/241/250.md +381 -0
  150. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/077-rtc/351/237/263/350/247/206/351/242/221.md +531 -0
  151. package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/078-table/350/241/250/346/240/274.md +849 -0
  152. package/dist/data/m8mpdoc-develop/012-Mock/347/232/204/344/275/277/347/224/250/Mock/347/232/204/344/275/277/347/224/250.md +116 -0
  153. package/dist/data/standards/css-style.md +531 -0
  154. package/dist/data/standards/js-style.md +394 -0
  155. package/dist/data/standards/project-structure.md +325 -0
  156. package/dist/data/standards/vue-style.md +644 -0
  157. package/dist/index.js +1 -0
  158. package/dist/tools/search.js +1 -0
  159. package/dist/tools/standards.js +1 -0
  160. package/package.json +43 -0
@@ -0,0 +1,265 @@
1
+ # 组件使用
2
+
3
+ ## dropdownmenu 下拉菜单
4
+
5
+ ### 介绍
6
+
7
+ - 下拉菜单。
8
+
9
+ ::: ifdef M83
10
+
11
+ - `v8.3.11`开始支持 weex 端使用
12
+
13
+ ::: endif
14
+
15
+ ### 代码演示
16
+
17
+ #### 基础用法
18
+
19
+ ```html
20
+ <em-dropdown-menu>
21
+ <em-dropdown-item v-model="value1" :options="option1" />
22
+ <em-dropdown-item v-model="value2" :options="option2" />
23
+ </em-dropdown-menu>
24
+ ```
25
+
26
+ ::: ifdef M83
27
+
28
+ ```js
29
+ export default {
30
+ data() {
31
+ return {
32
+ value1: 0,
33
+ value2: 'a',
34
+ option1: [
35
+ { text: '全部商品', value: 0 },
36
+ { text: '新款商品', value: 1 },
37
+ { text: '活动商品', value: 2 }
38
+ ],
39
+ option2: [
40
+ { text: '默认排序', value: 'a' },
41
+ { text: '好评排序', value: 'b' },
42
+ { text: '销量排序', value: 'c' }
43
+ ]
44
+ };
45
+ }
46
+ };
47
+ ```
48
+
49
+ ::: endif
50
+ ::: ifdef M84
51
+
52
+ ```js
53
+ import { ref } from 'vue';
54
+ const value1 = ref(0);
55
+ const value2 = ref('a');
56
+ const option1 = [
57
+ { text: '全部商品', value: 0 },
58
+ { text: '新款商品', value: 1 },
59
+ { text: '活动商品', value: 2 }
60
+ ];
61
+ const option2 = [
62
+ { text: '默认排序', value: 'a' },
63
+ { text: '好评排序', value: 'b' },
64
+ { text: '销量排序', value: 'c' }
65
+ ];
66
+ ```
67
+
68
+ ::: endif
69
+
70
+ #### 自定义菜单内容
71
+
72
+ 通过插槽可以自定义`DropdownItem`的内容,此时需要使用实例上的`toggle`方法手动控制菜单的显示
73
+
74
+ ```html
75
+ <em-dropdown-menu>
76
+ <em-dropdown-item v-model="value" :options="option" />
77
+ <em-dropdown-item title="筛选" ref="item">
78
+ <em-cell center title="包邮">
79
+ <template #rightIcon>
80
+ <em-switch v-model="switch1" size="24" active-color="#2e6be5" />
81
+ </template>
82
+ </em-cell>
83
+ <em-cell center title="团购">
84
+ <template #rightIcon>
85
+ <em-switch v-model="switch2" size="24" active-color="#2e6be5" />
86
+ </template>
87
+ </em-cell>
88
+ <div style="padding: 5px 16px">
89
+ <em-button type="danger" block round @click="onConfirm" color="#2e6be5">确认</em-button>
90
+ </div>
91
+ </em-dropdown-item>
92
+ </em-dropdown-menu>
93
+ ```
94
+
95
+ ::: ifdef M83
96
+
97
+ ```js
98
+ export default {
99
+ data() {
100
+ return {
101
+ value: 0,
102
+ switch1: false,
103
+ switch2: false,
104
+ option: [
105
+ { text: '全部商品', value: 0 },
106
+ { text: '新款商品', value: 1 },
107
+ { text: '活动商品', value: 2 }
108
+ ]
109
+ };
110
+ },
111
+ methods: {
112
+ onConfirm() {
113
+ this.$refs.item.toggle();
114
+ }
115
+ }
116
+ };
117
+ ```
118
+
119
+ ::: endif
120
+ ::: ifdef M84
121
+
122
+ ```js
123
+ import { ref } from 'vue';
124
+ const value = ref(0);
125
+ const switch1 = ref(false);
126
+ const switch2 = ref(false);
127
+ const item = ref(null);
128
+ const option = [
129
+ { text: '全部商品', value: 0 },
130
+ { text: '新款商品', value: 1 },
131
+ { text: '活动商品', value: 2 }
132
+ ];
133
+ const onConfirm = () => {
134
+ item.value.toggle();
135
+ };
136
+ ```
137
+
138
+ ::: endif
139
+
140
+ #### 自定义选中态颜色
141
+
142
+ 通过`active-color`属性可以自定义菜单标题和选项的选中态颜色
143
+
144
+ ```html
145
+ <em-dropdown-menu active-color="red">
146
+ <em-dropdown-item v-model="value1" :options="option1" />
147
+ <em-dropdown-item v-model="value2" :options="option2" />
148
+ </em-dropdown-menu>
149
+ ```
150
+
151
+ #### 向上展开
152
+
153
+ 将`direction`属性值设置为 up,菜单即可向上展开
154
+
155
+ ```html
156
+ <em-dropdown-menu direction="up">
157
+ <em-dropdown-item v-model="value1" :options="option1" />
158
+ <em-dropdown-item v-model="value2" :options="option2" />
159
+ </em-dropdown-menu>
160
+ ```
161
+
162
+ #### 禁用菜单
163
+
164
+ ```html
165
+ <em-dropdown-menu>
166
+ <em-dropdown-item v-model="value1" disabled :options="option1" />
167
+ <em-dropdown-item v-model="value2" disabled :options="option2" />
168
+ </em-dropdown-menu>
169
+ ```
170
+
171
+ ### API
172
+
173
+ #### DropdownMenu Props
174
+
175
+ | 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
176
+ | :--------------------- | :------------------------- | :-------------- | :-------- | :---------------------------------- |
177
+ | active-color | 菜单标题和选项的选中态颜色 | string | `#2e6be5` | 是 |
178
+ | direction | 菜单展开方向,可选值为`up` | string | `down` | 是 |
179
+ | z-index | 菜单栏 `z-index` 层级 | number / string | `99` | 否 |
180
+ | duration | 动画时长,单位毫秒 | number / string | `200` | 是 |
181
+ | overlay | 是否显示遮罩层 | boolean | `true` | 是 |
182
+ | close-on-click-overlay | 是否在点击遮罩层后关闭菜单 | boolean | `true` | 是 |
183
+
184
+ #### DropdownItem Props
185
+
186
+ | 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
187
+ | :--------------------------------------------------------------------------- | :-------------------------------- | :-------------- | :------------- | :---------------------------------- |
188
+ | v-model ::: ifdef M83 (value) ::: endif ::: ifdef M84 (modelValue) ::: endif | 当前选中项对应的 `value` | number / string | - | 是 |
189
+ | title | 菜单项标题 | string | 当前选中项文字 | 是 |
190
+ | options | 选项数组 | Option[] | `[]` | 是 |
191
+ | disabled | 是否禁用菜单 | boolean | `false` | 是 |
192
+ | title-class | 标题额外类名 | string | - | 否 |
193
+ | popup-style | 自定义弹出层样式 | string | - | 是 |
194
+ | hidden | `8.3.16` 隐藏此项菜单项与菜单标题 | boolean | `false` | 是 |
195
+
196
+ #### DropdownItem Events
197
+
198
+ | 事件名 | 说明 | 回调参数 |
199
+ | :----- | :------------------------------ | :------- |
200
+ | change | 点击选项导致 `value` 变化时触发 | `value` |
201
+ | open | 打开菜单栏时触发 | - |
202
+ | close | 关闭菜单栏时触发 | - |
203
+ | opened | 打开菜单栏且动画结束后触发 | - |
204
+ | closed | 关闭菜单栏且动画结束后触发 | - |
205
+
206
+ #### DropdownItem Slots
207
+
208
+ | 名称 | 说明 |
209
+ | :------ | :------- |
210
+ | default | 菜单内容 |
211
+
212
+ #### DropdownMenu 方法
213
+
214
+ 通过 `ref` 可以获取到 `DropdownMenu` 实例并调用实例方法,详见组件实例方法
215
+
216
+ | 方法名 | 说明 | 参数 | 返回值 |
217
+ | :----- | :----------- | :--- | :----- |
218
+ | close | 关闭下拉菜单 | - | - |
219
+
220
+ #### DropdownItem 方法
221
+
222
+ 通过 `ref` 可以获取到 `DropdownItem` 实例并调用实例方法,详见组件实例方法
223
+
224
+ | 方法名 | 说明 | 参数 | 返回值 |
225
+ | :----- | :------------------------------------------------------------ | :------------- | :----- |
226
+ | toggle | 切换菜单展示状态,传`true`为显示,`false`为隐藏,不传参为取反 | show?: boolean | - |
227
+
228
+ #### Option 数据结构
229
+
230
+ | 键名 | 说明 | 类型 |
231
+ | :---- | :--------------------- | :-------------- |
232
+ | text | 文字 | string |
233
+ | value | 标识符 | number / string |
234
+ | icon | 左侧图标名称或图片链接 | string |
235
+
236
+ ::: ifdef M83
237
+ <iframe
238
+ src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-dropdown-Menu"
239
+ frameborder=0
240
+ allowfullscreen class="ui-showcase-iframe">
241
+ </iframe>
242
+ ::: endif
243
+ ::: ifdef M84
244
+ <iframe
245
+ src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-dropdown-Menu"
246
+ frameborder=0
247
+ allowfullscreen class="ui-showcase-iframe">
248
+ </iframe>
249
+ ::: endif
250
+
251
+ <style>
252
+ .ui-showcase-iframe {
253
+ position: fixed;
254
+ right: 3.5vw;
255
+ top: 17%;
256
+ width: 375px;
257
+ height: 75vh;
258
+ box-shadow: 0 0 12px 6px #eee;
259
+ border-radius: 15px;
260
+ }
261
+ .main .markdown-body {
262
+ padding: 45px;
263
+ width: calc(97vw - 661px);
264
+ }
265
+ </style>
@@ -0,0 +1,203 @@
1
+ # 组件使用
2
+
3
+ ## notify 消息通知
4
+
5
+ ### 介绍
6
+
7
+ - 在页面顶部展示消息提示,支持函数调用和组件调用两种方式。
8
+
9
+ ### 引入
10
+
11
+ 手动引入时的引入路径:
12
+
13
+ ```js
14
+ import Notify from '@components/em-notify/index.js';
15
+ ```
16
+
17
+ Notify 作为全局函数,跨端框架为其提供了全局注入的功能,使用该函数时,框架会自动引入上述路径,所以在跨端框架中使用时,不必再手动引入。
18
+
19
+ ### 代码演示
20
+
21
+ #### 基础用法
22
+
23
+ `Notify` 是一个函数,调用后会直接在页面中弹出相应的消息提示。
24
+
25
+ 需要手动在页面上放一个 notify 节点,且提供一个 ref 方便函数进行查找。
26
+
27
+ ::: ifdef M83
28
+ 该节点的 ref 名称默认为 `emNotify`。
29
+ ::: endif
30
+
31
+ ::: ifdef M84
32
+ 该节点的 ref 名称默认为 `emNotifyRef`。
33
+ ::: endif
34
+
35
+ ::: ifdef M83
36
+
37
+ ```html
38
+ <em-notify ref="emNotify"></em-notify>
39
+ ```
40
+
41
+ ```js
42
+ Notify('通知内容');
43
+ ```
44
+
45
+ ::: endif
46
+
47
+ ::: ifdef M84
48
+
49
+ ```html
50
+ <em-notify ref="emNotifyRef"></em-notify>
51
+ ```
52
+
53
+ ```js
54
+ import { ref } from 'vue';
55
+
56
+ const emNotifyRef = ref(false);
57
+ Notify('通知内容');
58
+ defineExpose({
59
+ emNotifyRef
60
+ });
61
+ ```
62
+
63
+ ::: endif
64
+
65
+ #### 通知类型
66
+
67
+ 支持 `primary`、`success`、`warning`、`danger` 四种通知类型,默认为 `danger`。
68
+
69
+ ```js
70
+ // 主要通知
71
+ Notify({ type: 'primary', message: '通知\n内容' });
72
+
73
+ // 成功通知
74
+ Notify({ type: 'success', message: '通知\n内容' });
75
+
76
+ // 危险通知
77
+ Notify({ type: 'danger', message: '通知\n内容' });
78
+
79
+ // 警告通知
80
+ Notify({ type: 'warning', message: '通知\n内容' });
81
+ ```
82
+
83
+ #### 自定义通知
84
+
85
+ 自定义消息通知的颜色和展示时长。
86
+
87
+ ```js
88
+ Notify({
89
+ message: '自定义颜色',
90
+ color: '#ad0000',
91
+ background: '#ffe1e1'
92
+ });
93
+
94
+ Notify({
95
+ message: '自定义时长',
96
+ duration: 1000
97
+ });
98
+ ```
99
+
100
+ #### 组件调用
101
+
102
+ 如果需要在 `Notify` 内嵌入组件或其他自定义内容,可以使用组件调用的方式。
103
+
104
+ ```html
105
+ <em-button type="primary" text="组件调用" @click="showNotify" />
106
+ <em-notify v-model="show" type="success">
107
+ <em-icon name="bell" style="margin-right: 4px" />
108
+ <span>通知内容</span>
109
+ </em-notify>
110
+ ```
111
+
112
+ ::: ifdef M83
113
+
114
+ ```js
115
+ export default {
116
+ data() {
117
+ return {
118
+ show: false
119
+ };
120
+ },
121
+ methods: {
122
+ showNotify() {
123
+ this.show = true;
124
+ setTimeout(() => {
125
+ this.show = false;
126
+ }, 2000);
127
+ }
128
+ }
129
+ };
130
+ ```
131
+
132
+ ::: endif
133
+ ::: ifdef M84
134
+
135
+ ```js
136
+ import { ref } from 'vue';
137
+ const show = ref(false);
138
+ const showNotify = () => {
139
+ show.value = true;
140
+ setTimeout(() => {
141
+ show.value = false;
142
+ }, 2000);
143
+ };
144
+ ```
145
+
146
+ ::: endif
147
+
148
+ ### API
149
+
150
+ #### 方法
151
+
152
+ | 方法名 | 说明 | 参数 | 返回值 |
153
+ | :------------------------- | :----------------------------------------- | :---------------- | :------------ |
154
+ | Notify | 展示提示 | options / message | `notify` 实例 |
155
+ | Notify.clear | 关闭提示 | - | - |
156
+ | Notify.setDefaultOptions | 修改默认配置,对当前页面所有 `Notify` 生效 | options | `void` |
157
+ | Notify.resetDefaultOptions | 重置默认配置,对当前页面所有 `Notify` 生效 | - | `void` |
158
+
159
+ #### Options
160
+
161
+ | 参数 | 说明 | 类型 | 默认值 |
162
+ | :--------- | :-------------------------------------------------------- | :-------------- | :--------- |
163
+ | context | notify 节点上下文,传入后只在该$vm 节点下查找 notify 节点 | vue 实例 | 当前页面 |
164
+ | selector | notify 节点的 ref,函数根据该 ref 进行查找 | string | `emNotify` |
165
+ | type | 类型,可选值为 `primary` `success` `warning` | string | `danger` |
166
+ | message | 展示文案,支持通过`\n`换行 | string | - |
167
+ | duration | 展示时长(`ms`),值为 `0` 时,`notify` 不会消失 | number / string | `2000` |
168
+ | color | 字体颜色 | string | `white` |
169
+ | background | 背景颜色 | string | - |
170
+ | onClick | 点击时的回调函数 | Function | - |
171
+ | onOpened | 完全展示后的回调函数 | Function | - |
172
+ | onClose | 关闭时的回调函数 | Function | - |
173
+
174
+ ::: ifdef M83
175
+ <iframe
176
+ src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-notify"
177
+ frameborder=0
178
+ allowfullscreen class="ui-showcase-iframe">
179
+ </iframe>
180
+ ::: endif
181
+ ::: ifdef M84
182
+ <iframe
183
+ src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-notify"
184
+ frameborder=0
185
+ allowfullscreen class="ui-showcase-iframe">
186
+ </iframe>
187
+ ::: endif
188
+
189
+ <style>
190
+ .ui-showcase-iframe {
191
+ position: fixed;
192
+ right: 3.5vw;
193
+ top: 17%;
194
+ width: 375px;
195
+ height: 75vh;
196
+ box-shadow: 0 0 12px 6px #eee;
197
+ border-radius: 15px;
198
+ }
199
+ .main .markdown-body {
200
+ padding: 45px;
201
+ width: calc(97vw - 661px);
202
+ }
203
+ </style>
@@ -0,0 +1,139 @@
1
+ # 组件使用
2
+
3
+ ## overlay 遮罩层
4
+
5
+ ### 介绍
6
+
7
+ - 创建一个遮罩层,用于强调特定的页面元素,并阻止用户进行其他操作。
8
+
9
+ ::: ifdef M83
10
+
11
+ - `v8.3.11`开始支持 weex 端使用
12
+
13
+ ::: endif
14
+
15
+ ### 代码演示
16
+
17
+ #### 基础用法
18
+
19
+ ```html
20
+ <em-button type="primary" text="显示遮罩层" @click="show = true" />
21
+ <em-overlay :show="show" @click="show = false" />
22
+ ```
23
+
24
+ ::: ifdef M83
25
+
26
+ ```js
27
+ export default {
28
+ data() {
29
+ return {
30
+ show: false
31
+ };
32
+ }
33
+ };
34
+ ```
35
+
36
+ ::: endif
37
+ ::: ifdef M84
38
+
39
+ ```js
40
+ import { ref } from 'vue';
41
+
42
+ const show = ref(false);
43
+ ```
44
+
45
+ ::: endif
46
+
47
+ #### 嵌入内容
48
+
49
+ 通过默认插槽可以在遮罩层上嵌入任意内容
50
+
51
+ ```html
52
+ <em-overlay :show="show" @click="show = false">
53
+ <div class="wrapper">
54
+ <scroll-view scroll-y="true" class="scroll-items" style="scroll-behavior: smooth" @click.stop>
55
+ <div v-for="item in 20" :key="item">item</div>
56
+ </scroll-view>
57
+ </div>
58
+ </em-overlay>
59
+
60
+ <style>
61
+ .wrapper {
62
+ display: flex;
63
+ align-items: center;
64
+ justify-content: center;
65
+ height: 100%;
66
+ }
67
+
68
+ .block {
69
+ width: 120px;
70
+ height: 120px;
71
+ background-color: #fff;
72
+ }
73
+ </style>
74
+ ```
75
+
76
+ ### API
77
+
78
+ #### Props
79
+
80
+ | 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
81
+ | :----------- | :------------------------------------------------------------------- | :-------------- | :------ | :---------------------------------- |
82
+ | show | 是否展示遮罩层 | boolean | `false` | 是 |
83
+ | z-index | `z-index` 层级 | number / string | `99` | 否 |
84
+ | duration | 动画时长,单位毫秒 | number / string | `280` | 是 |
85
+ | custom-style | 自定义样式 | string | - | 是 |
86
+ | lock-scroll | 是否锁定背景滚动,锁定时蒙层里的内容也将无法滚动, 支付宝小程序不支持 | boolean | `true` | 否(weex 端默认锁定背景滚动) |
87
+
88
+ #### Events
89
+
90
+ | 事件名 | 说明 | 回调参数 |
91
+ | :----- | :--------- | :----------- |
92
+ | click | 点击时触发 | event: Event |
93
+
94
+ #### Slots
95
+
96
+ | 名称 | 说明 |
97
+ | :------ | :--------------------------------- |
98
+ | default | 默认插槽,用于在遮罩层上方嵌入内容 |
99
+
100
+ ### 遮罩层滚动穿透说明
101
+
102
+ 在 H5 或微信小程序中,遮罩层组件通过设置`@touchmove.stop.prevent`来锁定背景滚动,此时由于禁止了`touchmove`的默认行为,导致遮罩层内部也无法进行滚动。
103
+
104
+ 若想要在内部滚动,可以使用`scroll-view`组件实现滚动。
105
+
106
+ 而在支付宝小程序中,`@touchmove.stop.prevent`无法锁定背景滚动,若希望触摸蒙版时不会触发底部内容的滚动,可以在蒙版弹出时,设置底部的内容样式为`overflow: hidden`来解决这个问题。
107
+
108
+ 类似问题在其他组件如:`popup`、`picker`等使用了遮罩层的组件中也会存在,都可以参考上述方案解决。
109
+
110
+ ::: ifdef M83
111
+ <iframe
112
+ src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-overlay"
113
+ frameborder=0
114
+ allowfullscreen class="ui-showcase-iframe">
115
+ </iframe>
116
+ ::: endif
117
+ ::: ifdef M84
118
+ <iframe
119
+ src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-overlay"
120
+ frameborder=0
121
+ allowfullscreen class="ui-showcase-iframe">
122
+ </iframe>
123
+ ::: endif
124
+
125
+ <style>
126
+ .ui-showcase-iframe {
127
+ position: fixed;
128
+ right: 3.5vw;
129
+ top: 17%;
130
+ width: 375px;
131
+ height: 75vh;
132
+ box-shadow: 0 0 12px 6px #eee;
133
+ border-radius: 15px;
134
+ }
135
+ .main .markdown-body {
136
+ padding: 45px;
137
+ width: calc(97vw - 661px);
138
+ }
139
+ </style>