m8-framework-mcp 1.0.0 → 1.0.3

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 (389) hide show
  1. package/README.md +55 -17
  2. package/build/index.js +420 -86
  3. package/package.json +2 -4
  4. package/docs/ejs-doc/404/404.html +0 -9
  5. package/docs/ejs-doc/_draft/sha1_salt.md +0 -47
  6. package/docs/ejs-doc/_include/config.php +0 -10
  7. package/docs/ejs-doc/_include/cssboot.inc.php +0 -62
  8. package/docs/ejs-doc/_include/jsboot.inc.php +0 -7
  9. package/docs/ejs-doc/api_app/api_app.md +0 -43
  10. package/docs/ejs-doc/api_audio/api_audio.md +0 -225
  11. package/docs/ejs-doc/api_auth/api_auth.md +0 -256
  12. package/docs/ejs-doc/api_basicCard/api_basicCard.md +0 -69
  13. package/docs/ejs-doc/api_card_ui/api_card_ui.md +0 -37
  14. package/docs/ejs-doc/api_contact/api_contact.md +0 -295
  15. package/docs/ejs-doc/api_contact/images/component_contact.jpg +0 -0
  16. package/docs/ejs-doc/api_device/api_device.md +0 -761
  17. package/docs/ejs-doc/api_event/api_event.md +0 -244
  18. package/docs/ejs-doc/api_global/api_global.md +0 -440
  19. package/docs/ejs-doc/api_io/api_io.md +0 -369
  20. package/docs/ejs-doc/api_miniH5/api_miniH5.md +0 -279
  21. package/docs/ejs-doc/api_navigator/api_navigator.md +0 -654
  22. package/docs/ejs-doc/api_navigator/images/navigator.backbtn.png +0 -0
  23. package/docs/ejs-doc/api_navigator/images/navigator.hide.png +0 -0
  24. package/docs/ejs-doc/api_navigator/images/navigator.hidestatus.png +0 -0
  25. package/docs/ejs-doc/api_navigator/images/navigator.leftarrowbtn.jpg +0 -0
  26. package/docs/ejs-doc/api_navigator/images/navigator.leftbtn.png +0 -0
  27. package/docs/ejs-doc/api_navigator/images/navigator.leftbtnimg.png +0 -0
  28. package/docs/ejs-doc/api_navigator/images/navigator.multititle.jpg +0 -0
  29. package/docs/ejs-doc/api_navigator/images/navigator.rightbtn.png +0 -0
  30. package/docs/ejs-doc/api_navigator/images/navigator.rightbtn2.png +0 -0
  31. package/docs/ejs-doc/api_navigator/images/navigator.rightbtnimg.png +0 -0
  32. package/docs/ejs-doc/api_navigator/images/navigator.rightbtnimg2.png +0 -0
  33. package/docs/ejs-doc/api_navigator/images/navigator.rightmenu.png +0 -0
  34. package/docs/ejs-doc/api_navigator/images/navigator.searchbar.png +0 -0
  35. package/docs/ejs-doc/api_navigator/images/navigator.subtitle.jpg +0 -0
  36. package/docs/ejs-doc/api_navigator/images/navigator.title.png +0 -0
  37. package/docs/ejs-doc/api_page/api_page.md +0 -261
  38. package/docs/ejs-doc/api_runtime/api_runtime.md +0 -788
  39. package/docs/ejs-doc/api_storage/api_storage.md +0 -320
  40. package/docs/ejs-doc/api_stream/api_stream.md +0 -152
  41. package/docs/ejs-doc/api_stream/images/body_multiform.jpg +0 -0
  42. package/docs/ejs-doc/api_ui/api_ui.md +0 -836
  43. package/docs/ejs-doc/api_ui/images/ui.popwindow.png +0 -0
  44. package/docs/ejs-doc/api_ui/images/ui_actionsheet.png +0 -0
  45. package/docs/ejs-doc/api_ui/images/ui_alert.png +0 -0
  46. package/docs/ejs-doc/api_ui/images/ui_confirm.png +0 -0
  47. package/docs/ejs-doc/api_ui/images/ui_pickDateTime.png +0 -0
  48. package/docs/ejs-doc/api_ui/images/ui_pickdate.png +0 -0
  49. package/docs/ejs-doc/api_ui/images/ui_pickmonth.png +0 -0
  50. package/docs/ejs-doc/api_ui/images/ui_picktime.png +0 -0
  51. package/docs/ejs-doc/api_ui/images/ui_poppicker.png +0 -0
  52. package/docs/ejs-doc/api_ui/images/ui_poppicker2.png +0 -0
  53. package/docs/ejs-doc/api_ui/images/ui_poppicker3.png +0 -0
  54. package/docs/ejs-doc/api_ui/images/ui_prompt.png +0 -0
  55. package/docs/ejs-doc/api_ui/images/ui_select.png +0 -0
  56. package/docs/ejs-doc/api_ui/images/ui_select2.png +0 -0
  57. package/docs/ejs-doc/api_ui/images/ui_select3.png +0 -0
  58. package/docs/ejs-doc/api_ui/images/ui_showdebugdialog.png +0 -0
  59. package/docs/ejs-doc/api_ui/images/ui_showwaiting.png +0 -0
  60. package/docs/ejs-doc/api_ui/images/ui_toast.png +0 -0
  61. package/docs/ejs-doc/api_ui/images/ui_toastAndEvent.png +0 -0
  62. package/docs/ejs-doc/api_util/api_util.md +0 -615
  63. package/docs/ejs-doc/api_util/images/util.playvideo.png +0 -0
  64. package/docs/ejs-doc/api_util/images/util.previmage.png +0 -0
  65. package/docs/ejs-doc/api_util/images/util.selectfile.png +0 -0
  66. package/docs/ejs-doc/api_util/images/util.selectimage.png +0 -0
  67. package/docs/ejs-doc/authentication/authentication.md +0 -28
  68. package/docs/ejs-doc/changelog/changelog.md +0 -290
  69. package/docs/ejs-doc/component_invokeplugin/component_invokeplugin.md +0 -54
  70. package/docs/ejs-doc/component_outline/component_outline.md +0 -71
  71. package/docs/ejs-doc/guid_apiconstraint/guid_apiconstraint.md +0 -30
  72. package/docs/ejs-doc/guid_debugpage/guid_debugpage.md +0 -53
  73. package/docs/ejs-doc/guid_debugpage/images/client.jpg +0 -0
  74. package/docs/ejs-doc/guid_debugpage/images/room.png +0 -0
  75. package/docs/ejs-doc/guid_demodebug/guid_demodebug.md +0 -59
  76. package/docs/ejs-doc/guid_demodebug/images/qr_demo.png +0 -0
  77. package/docs/ejs-doc/guid_demodebug/images/qrcode-weex.png +0 -0
  78. package/docs/ejs-doc/guid_demodebug/images/qrcode.png +0 -0
  79. package/docs/ejs-doc/guid_demodebug/images/qrcode_ejs.png +0 -0
  80. package/docs/ejs-doc/guid_errorcode/guid_errorcode.md +0 -27
  81. package/docs/ejs-doc/guid_errorcode/images/5d38937fec5107c38502c3ee38ba5b2c.png +0 -0
  82. package/docs/ejs-doc/guid_getstart/guid_getstart.md +0 -188
  83. package/docs/ejs-doc/introduction/introduction.md +0 -29
  84. package/docs/ejs-doc/jsapi_h5_all/jsapi_h5_all.md +0 -1231
  85. package/docs/ejs-doc/jsapi_mini_all/jsapi_mini_all.md +0 -1105
  86. package/docs/ejs-doc/m7_mini_h5/images/001.png +0 -0
  87. package/docs/ejs-doc/m7_mini_h5/images/dev.png +0 -0
  88. package/docs/ejs-doc/m7_mini_h5/images/install.png +0 -0
  89. package/docs/ejs-doc/m7_mini_h5/images/mobile_dev.png +0 -0
  90. package/docs/ejs-doc/m7_mini_h5/images/setting.png +0 -0
  91. package/docs/ejs-doc/m7_mini_h5/images/update.png +0 -0
  92. package/docs/ejs-doc/m7_mini_h5/m7_mini_h5.md +0 -410
  93. package/docs/ejs-doc/promisesupport/promisesupport.md +0 -84
  94. package/docs/ejs-doc/structure/images/structure.jpg +0 -0
  95. package/docs/ejs-doc/structure/images/structure2.jpg +0 -0
  96. package/docs/ejs-doc/structure/structure.md +0 -26
  97. package/docs/ejs-doc/version/version.md +0 -62
  98. package/docs/m8mpdoc-develop/$navigation.md +0 -343
  99. package/docs/m8mpdoc-develop/000-/346/225/264/344/275/223/350/256/276/350/256/241/000-/346/241/206/346/236/266/347/256/200/344/273/213.md +0 -61
  100. package/docs/m8mpdoc-develop/000-/346/225/264/344/275/223/350/256/276/350/256/241/001-/346/241/206/346/236/266/346/236/266/346/236/204.md +0 -60
  101. package/docs/m8mpdoc-develop/000-/346/225/264/344/275/223/350/256/276/350/256/241/002-/347/233/256/345/275/225/345/217/212/346/226/207/344/273/266/347/273/204/347/273/207.md +0 -106
  102. package/docs/m8mpdoc-develop/000-/346/225/264/344/275/223/350/256/276/350/256/241/003-/345/206/205/347/275/256/347/254/254/344/270/211/346/226/271/345/272/223/350/257/264/346/230/216.md +0 -25
  103. package/docs/m8mpdoc-develop/000-/346/225/264/344/275/223/350/256/276/350/256/241/004-/345/267/245/347/250/213/350/207/252/345/256/232/344/271/211/351/205/215/347/275/256.md +0 -97
  104. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/000-/347/216/257/345/242/203/345/207/206/345/244/207.md +0 -186
  105. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/001-/345/237/272/347/241/200/350/257/255/346/263/225.md +0 -218
  106. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/002-Vue/347/273/204/344/273/266/344/273/213/347/273/215.md +0 -139
  107. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/004-VSCode/346/217/222/344/273/266.md +0 -125
  108. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/005-pages.md +0 -300
  109. package/docs/m8mpdoc-develop/0001-/345/211/215/346/234/237/345/207/206/345/244/207/006-manifest.md +0 -173
  110. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-CSS/350/257/255/346/263/225.md +0 -217
  111. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-ES6/346/224/257/346/214/201.md +0 -14
  112. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/344/273/200/344/271/210/346/230/257/346/235/241/344/273/266/347/274/226/350/257/221.md +0 -176
  113. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/345/274/200/345/217/221/350/247/204/350/214/203.md +0 -167
  114. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/345/274/225/347/224/250CSS.md +0 -15
  115. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/345/274/225/347/224/250JS.md +0 -42
  116. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/345/274/225/347/224/250/347/273/204/344/273/266.md +0 -34
  117. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/345/274/225/347/224/250/351/235/231/346/200/201/350/265/204/346/272/220.md +0 -69
  118. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/346/240/207/345/207/206js/345/222/214/346/265/217/350/247/210/345/231/250js/347/232/204/345/214/272/345/210/253.md +0 -16
  119. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/350/260/203/350/257/225.md +0 -29
  120. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/350/267/250/347/253/257/345/205/274/345/256/271.md +0 -11
  121. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/000-/350/277/220/350/241/214.md +0 -50
  122. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/001-/350/267/250/347/253/257/346/263/250/346/204/217.md +0 -325
  123. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/002-/346/241/206/346/236/266/350/216/267/345/217/226.md +0 -38
  124. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/002-/346/241/206/346/236/266/350/216/267/345/217/226vue3.md +0 -39
  125. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/003-/350/267/257/345/276/204/345/210/253/345/220/215.md +0 -21
  126. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/004-/345/274/200/345/247/213/345/274/200/345/217/221.md +0 -105
  127. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/005-/350/265/204/346/272/220/345/244/204/347/220/206/344/270/216/345/217/221/345/270/203.md +0 -0
  128. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/006-Boot/345/205/261/347/224/250/350/265/204/346/272/220.md +0 -13
  129. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/007-Config/344/270/232/345/212/241/351/205/215/347/275/256.md +0 -325
  130. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/008-/345/267/245/345/205/267/347/261/273/346/240/267/345/274/217.md +0 -91
  131. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/009-/347/224/237/345/221/275/345/221/250/346/234/237.md +0 -119
  132. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/009-/347/224/237/345/221/275/345/221/250/346/234/237vue3.md +0 -100
  133. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/010-/346/236/204/345/273/272.md +0 -94
  134. package/docs/m8mpdoc-develop/001-/351/241/265/351/235/242/345/274/200/345/217/221/011-/345/217/221/345/270/203.md +0 -51
  135. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/000-token/347/232/204/344/275/277/347/224/250.md +0 -5
  136. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/001-/344/273/243/347/240/201/350/247/204/350/214/203/350/207/252/345/212/250/346/243/200/346/265/213.md +0 -0
  137. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/002-/345/211/215/345/220/216/347/253/257/346/225/260/346/215/256/344/272/244/344/272/222/345/274/200/345/217/221/346/250/241/345/274/217.md +0 -5
  138. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/003-style-guide.md +0 -23
  139. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/003.1-style-guide-a.md +0 -872
  140. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/003.2-style-guide-b.md +0 -1041
  141. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/003.3-style-guide-c.md +0 -489
  142. package/docs/m8mpdoc-develop/002-/350/247/204/350/214/203/344/270/216/346/250/241/345/274/217/003.4-style-guide-d.md +0 -372
  143. package/docs/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 +0 -247
  144. package/docs/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 +0 -276
  145. package/docs/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 +0 -130
  146. package/docs/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 +0 -115
  147. package/docs/m8mpdoc-develop/004-EJS/347/233/270/345/205/263/000-EJS2.X.md +0 -5
  148. package/docs/m8mpdoc-develop/004-EJS/347/233/270/345/205/263/001-EJS3.X.md +0 -5
  149. package/docs/m8mpdoc-develop/004-EJS/347/233/270/345/205/263/001-EJS4.X.md +0 -5
  150. package/docs/m8mpdoc-develop/004-EJS/347/233/270/345/205/263/001-EJS4.Xmp.md +0 -5
  151. package/docs/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 +0 -398
  152. package/docs/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 +0 -456
  153. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/000-charset.md +0 -128
  154. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/001-base64.md +0 -142
  155. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/002-date.md +0 -210
  156. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/004-math.md +0 -85
  157. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/006-sha1.md +0 -21
  158. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/007-sha256.md +0 -36
  159. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/008-storage.md +0 -128
  160. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/009-string.md +0 -148
  161. package/docs/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 +0 -76
  162. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/011-cookie.md +0 -59
  163. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/012-util-sm.md +0 -95
  164. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-1.baseapi.md +0 -76
  165. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.network.md +0 -202
  166. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.socketTask.md +0 -92
  167. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-3.uiapi.md +0 -412
  168. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-4.eventapi.md +0 -146
  169. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-5.otherapi.md +0 -137
  170. package/docs/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/014-util-mpVerifyManager.md +0 -363
  171. package/docs/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 +0 -188
  172. package/docs/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 +0 -460
  173. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/004-amap/345/234/260/345/233/276.md +0 -285
  174. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/005-button/346/214/211/351/222/256.md +0 -211
  175. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/008-cell/345/215/225/345/205/203/346/240/274.md +0 -213
  176. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/009-checkbox/345/244/215/351/200/211/346/241/206.md +0 -501
  177. package/docs/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 +0 -168
  178. package/docs/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 +0 -617
  179. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/013-field/350/276/223/345/205/245/346/241/206.md +0 -539
  180. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/015-form/350/241/250/345/215/225.md +0 -999
  181. package/docs/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 +0 -150
  182. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/019-icon/345/233/276/346/240/207.md +0 -133
  183. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/020-loading/345/212/240/350/275/275.md +0 -117
  184. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/021-noticebar/351/200/232/347/237/245/346/240/217.md +0 -152
  185. package/docs/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 +0 -427
  186. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/023-pagination/345/210/206/351/241/265.md +0 -212
  187. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/024-panel/351/235/242/346/235/277.md +0 -85
  188. package/docs/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 +0 -175
  189. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/026-picker/351/200/211/346/213/251/345/231/250.md +0 -519
  190. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/027-popup/345/274/271/345/207/272/345/261/202.md +0 -152
  191. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/028-progress/350/277/233/345/272/246/346/235/241.md +0 -103
  192. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/029-radio/345/215/225/351/200/211/346/241/206.md +0 -285
  193. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/030-rate/350/257/204/345/210/206.md +0 -189
  194. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/031-search/346/220/234/347/264/242.md +0 -217
  195. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/032-slider/346/273/221/345/235/227.md +0 -166
  196. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/033-stepper/346/255/245/350/277/233/345/231/250.md +0 -340
  197. package/docs/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 +0 -265
  198. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/036-switch/345/274/200/345/205/263.md +0 -196
  199. package/docs/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 +0 -115
  200. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/038-tag/346/240/207/350/256/260.md +0 -232
  201. package/docs/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 +0 -631
  202. package/docs/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 +0 -531
  203. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/041-verifycode/351/252/214/350/257/201/347/240/201.md +0 -111
  204. package/docs/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 +0 -337
  205. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/043-layout/345/270/203/345/261/200.md +0 -150
  206. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/044-image/345/233/276/347/211/207.md +0 -144
  207. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/045-toast/350/275/273/346/217/220/347/244/272.md +0 -429
  208. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/046-calendar/346/227/245/345/216/206.md +0 -467
  209. package/docs/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 +0 -295
  210. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/048-tab/346/240/207/347/255/276/351/241/265.md +0 -577
  211. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/049-dialog/345/274/271/345/207/272/346/241/206.md +0 -491
  212. package/docs/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 +0 -265
  213. package/docs/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 +0 -203
  214. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/052-overlay/351/201/256/347/275/251/345/261/202.md +0 -139
  215. package/docs/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 +0 -199
  216. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/054-grid/345/256/253/346/240/274.md +0 -183
  217. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/055-countdown/345/200/222/350/256/241/346/227/266.md +0 -289
  218. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/056-divider/345/210/206/345/211/262/347/272/277.md +0 -97
  219. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/057-empty/347/251/272/347/212/266/346/200/201.md +0 -146
  220. package/docs/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 +0 -292
  221. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/059-lazyload/346/207/222/345/212/240/350/275/275.md +0 -120
  222. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/060-skeleton/351/252/250/346/236/266/345/261/217.md +0 -114
  223. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/061-steps/346/255/245/351/252/244/346/235/241.md +0 -119
  224. package/docs/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 +0 -208
  225. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/063-indexbar/347/264/242/345/274/225/346/240/217.md +0 -161
  226. package/docs/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 +0 -248
  227. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/065-tabbar/346/240/207/347/255/276/346/240/217.md +0 -314
  228. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/066-badge/345/276/275/346/240/207.md +0 -162
  229. package/docs/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 +0 -325
  230. package/docs/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 +0 -360
  231. package/docs/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 +0 -595
  232. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/070-swipe/350/275/256/346/222/255.md +0 -262
  233. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/071-/345/233/275/351/231/205/345/214/226.md +0 -51
  234. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/072-easycalendar/346/227/245/345/216/206.md +0 -132
  235. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/073-qrcode/344/272/214/347/273/264/347/240/201.md +0 -1538
  236. package/docs/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 +0 -261
  237. package/docs/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 +0 -161
  238. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/076-chart/345/233/276/350/241/250.md +0 -381
  239. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/077-rtc/351/237/263/350/247/206/351/242/221.md +0 -531
  240. package/docs/m8mpdoc-develop/009-UI/347/273/204/344/273/266/078-table/350/241/250/346/240/274.md +0 -849
  241. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/001-/345/260/217/347/250/213/345/272/217/345/256/277/344/270/273/347/216/257/345/242/203.md +0 -196
  242. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/002-/350/256/276/350/256/241.md +0 -0
  243. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/003-/345/274/200/345/217/221/345/260/217/347/250/213/345/272/217.md +0 -267
  244. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/004-/345/260/217/347/250/213/345/272/217/351/205/215/347/275/256.md +0 -71
  245. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/005-/345/274/200/345/217/221/345/260/217/347/250/213/345/272/217/345/215/241/347/211/207.md +0 -307
  246. package/docs/m8mpdoc-develop/010-/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/006-/345/274/200/345/217/221/345/206/205/347/275/256/345/260/217/347/250/213/345/272/217.md +0 -222
  247. package/docs/m8mpdoc-develop/011-vuex/344/270/216router/347/232/204/344/275/277/347/224/250/router/347/232/204/344/275/277/347/224/250.md +0 -275
  248. package/docs/m8mpdoc-develop/011-vuex/344/270/216router/347/232/204/344/275/277/347/224/250/vuex/347/232/204/344/275/277/347/224/250.md +0 -60
  249. package/docs/m8mpdoc-develop/012-Mock/347/232/204/344/275/277/347/224/250/Mock/347/232/204/344/275/277/347/224/250.md +0 -116
  250. package/docs/m8mpdoc-develop/013-/350/247/243/345/206/263/346/234/254/345/234/260/350/267/250/345/237/237/devServer/350/267/250/345/237/237/351/205/215/347/275/256.md +0 -81
  251. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/DOM/346/223/215/344/275/234/346/227/266/346/234/272.md +0 -45
  252. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/M8.3/351/241/271/347/233/256/350/277/201/347/247/273/350/207/263M8.4.md +0 -216
  253. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/M8/350/200/201/351/241/271/347/233/256/350/277/201/347/247/273/350/267/250/347/253/257.md +0 -55
  254. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/install.md +0 -91
  255. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/pageopen.md +0 -52
  256. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/postcss/350/256/276/347/275/256.md +0 -24
  257. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/spechara.md +0 -39
  258. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/token/350/256/276/347/275/256.md +0 -14
  259. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/transpile_dependencies.md +0 -18
  260. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230/webview/344/270/255/345/206/205/345/265/214H5/351/241/265/351/235/242.md +0 -186
  261. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//344/270/211/346/226/271APP/346/240/207/351/242/230/344/270/215/350/207/252/345/212/250/344/277/256/346/224/271.md +0 -30
  262. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//344/270/252/346/200/247/345/214/226/346/241/206/346/236/266/347/273/204/344/273/266.md +0 -87
  263. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//344/274/240/345/200/274/345/212/250/346/200/201/346/240/267/345/274/217.md +0 -29
  264. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//344/277/256/346/224/271/347/273/204/344/273/266/345/206/205/346/240/267/345/274/217.md +0 -29
  265. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//345/244/204/347/220/206/346/226/260/347/202/271/345/260/217/347/250/213/345/272/217/350/267/250/345/237/237/351/227/256/351/242/230.md +0 -22
  266. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//346/243/200/346/265/213/345/217/230/345/214/226/347/232/204/346/263/250/346/204/217/344/272/213/351/241/271.md +0 -183
  267. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//347/234/237/346/234/272/350/260/203/350/257/225.md +0 -26
  268. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//350/267/250/347/253/257/345/274/200/345/217/221/345/270/270/350/247/201/351/227/256/351/242/230.md +0 -126
  269. package/docs/m8mpdoc-develop/014-/345/270/270/350/247/201/351/227/256/351/242/230//350/267/250/347/253/257/346/241/206/346/236/266/345/256/211/345/205/250/345/237/237/351/200/202/351/205/215.md +0 -153
  270. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/3thbuild.md +0 -42
  271. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/Pinia/347/232/204/344/275/277/347/224/250.md +0 -88
  272. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/custom_compts.md +0 -60
  273. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/customize.md +0 -283
  274. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/customtoken.md +0 -74
  275. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/i18n.md +0 -220
  276. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/modules.md +0 -44
  277. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/multiple.md +0 -160
  278. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/neui/345/272/224/347/224/250/346/236/204/345/273/272.md +0 -111
  279. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/pages.md +0 -18
  280. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/scss/345/217/230/351/207/217.md +0 -132
  281. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/subpage.md +0 -107
  282. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/weex/345/272/224/347/224/250/346/236/204/345/273/272.md +0 -106
  283. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226/xmapp.md +0 -77
  284. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226//344/270/216/345/216/237/347/224/237/351/241/271/347/233/256/350/236/215/345/220/210.md +0 -61
  285. package/docs/m8mpdoc-develop/015-/345/267/245/347/250/213/345/214/226//351/200/202/350/200/201/345/214/226/346/226/271/346/241/210.md +0 -74
  286. package/docs/m8mpdoc-develop/016-/350/247/206/350/247/211/350/247/204/350/214/203//347/247/273/345/212/250/350/247/206/350/247/211/350/256/276/350/256/241/350/247/204/350/214/2032.0.md +0 -1
  287. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/001-view.md +0 -56
  288. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/002-scroll-view.md +0 -233
  289. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/003-match-media.md +0 -43
  290. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/004-movable-view.md +0 -118
  291. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/005-cover-view.md +0 -20
  292. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/006-cover-image.md +0 -154
  293. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/007-audio.md +0 -81
  294. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/008-camera.md +0 -70
  295. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/009-image.md +0 -197
  296. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/010-video.md +0 -196
  297. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/011-live-player.md +0 -139
  298. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/012-live-pusher.md +0 -274
  299. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/013-canvas.md +0 -90
  300. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/014-web-view.md +0 -151
  301. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/015-vue/347/273/204/344/273/266.md +0 -308
  302. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/018-map.md +0 -278
  303. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/019-input.md +0 -202
  304. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/020-textarea.md +0 -119
  305. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/021-movable-area.md +0 -25
  306. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/022-page-meta.md +0 -80
  307. package/docs/m8mpdoc-develop/017-/345/206/205/347/275/256/347/273/204/344/273/266/023-navigation-bar.md +0 -58
  308. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/0-/344/273/213/347/273/215.md +0 -92
  309. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/000-/351/200/232/347/224/250/346/240/267/345/274/217.md +0 -9
  310. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/001-button/346/214/211/351/222/256.md +0 -497
  311. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/002-buttonedit/346/214/211/351/222/256/347/274/226/350/276/221.md +0 -146
  312. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/003-radio/345/215/225/351/200/211/346/241/206.md +0 -476
  313. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/004-checkbox/345/244/232/351/200/211/347/273/204.md +0 -622
  314. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/005-collapse/346/212/230/345/217/240/351/235/242/346/235/277.md +0 -257
  315. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/006-slider/346/273/221/345/235/227.md +0 -420
  316. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/007-badge/350/247/222/346/240/207.md +0 -175
  317. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/008-icon/345/233/276/346/240/207.md +0 -133
  318. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/009-overlay/351/201/256/347/275/251/345/261/202.md +0 -111
  319. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/010-drawer/346/212/275/345/261/211.md +0 -369
  320. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/011-dialog/345/274/271/345/207/272/345/261/202.md +0 -430
  321. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/015-steps/346/255/245/351/252/244/346/235/241.md +0 -250
  322. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/017-tooltip/346/226/207/345/255/227/346/217/220/347/244/272.md +0 -101
  323. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/018-progress/350/277/233/345/272/246/346/235/241.md +0 -252
  324. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/019-layout/345/270/203/345/261/200.md +0 -324
  325. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/023-toolbar/345/267/245/345/205/267/346/240/217.md +0 -612
  326. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/024-toolbarbtns/346/214/211/351/222/256/347/273/204.md +0 -228
  327. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/025-input/350/276/223/345/205/245/346/241/206.md +0 -383
  328. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/026-autocomplete/350/207/252/345/212/250/350/241/245/345/205/250/350/276/223/345/205/245/346/241/206.md +0 -305
  329. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/027-form/350/241/250/345/215/225.md +0 -1343
  330. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/028-cascader/347/272/247/350/201/224.md +0 -695
  331. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/029-image/345/233/276/347/211/207.md +0 -211
  332. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/031-datagrid/345/210/227/350/241/250.md +0 -664
  333. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/032-pagination/345/210/206/351/241/265.md +0 -192
  334. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/033-configprovider/345/205/250/345/261/200/351/205/215/347/275/256.md +0 -417
  335. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/034-switch/345/274/200/345/205/263.md +0 -305
  336. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/035-breadcrumb/351/235/242/345/214/205/345/261/221.md +0 -90
  337. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/036-empty/347/251/272/347/212/266/346/200/201.md +0 -80
  338. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/037-colorpalette/350/260/203/350/211/262/346/235/277.md +0 -201
  339. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/038-alert/346/217/220/347/244/272.md +0 -206
  340. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/039-scrollbar/346/273/232/345/212/250/346/235/241.md +0 -256
  341. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/040-skeleton/351/252/250/346/236/266/345/261/217.md +0 -284
  342. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/041-loading/345/212/240/350/275/275.md +0 -183
  343. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/042-verifycode/351/252/214/350/257/201/347/240/201.md +0 -128
  344. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/043-timeline/346/227/266/351/227/264/350/275/264.md +0 -196
  345. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/044-workflow/345/267/245/344/275/234/346/265/201.md +0 -452
  346. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/045-ewebeditor/345/257/214/346/226/207/346/234/254/347/274/226/350/276/221/345/231/250.md +0 -236
  347. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/046-tabs/346/240/207/347/255/276/351/241/265.md +0 -388
  348. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/047-notification/351/200/232/347/237/245.md +0 -321
  349. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/048-dropdown/344/270/213/346/213/211/350/217/234/345/215/225.md +0 -400
  350. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/049-tree/346/240/221/345/275/242/346/216/247/344/273/266.md +0 -1567
  351. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/050-popover/345/274/271/345/207/272/346/241/206.md +0 -294
  352. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/051-select/351/200/211/346/213/251/345/231/250.md +0 -976
  353. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/052-tree-select/346/240/221/345/275/242/351/200/211/346/213/251.md +0 -918
  354. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/053-inputnumber/346/225/260/345/255/227/350/276/223/345/205/245/346/241/206.md +0 -206
  355. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/054-tag/346/240/207/347/255/276.md +0 -348
  356. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/055-upload/344/270/212/344/274/240.md +0 -718
  357. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/056-message/346/266/210/346/201/257/346/217/220/347/244/272.md +0 -287
  358. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/057-segmented/345/210/206/346/256/265/346/216/247/345/210/266/345/231/250.md +0 -222
  359. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/058-progress/350/277/233/345/272/246/346/235/241.md +0 -420
  360. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/059-result/347/273/223/346/236/234.md +0 -106
  361. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/060-avatar/345/244/264/345/203/217.md +0 -294
  362. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/061-affix/345/233/272/351/222/211.md +0 -120
  363. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/062-popconfirm/346/260/224/346/263/241/347/241/256/350/256/244/346/241/206.md +0 -139
  364. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/063-input-tag/346/240/207/347/255/276/350/276/223/345/205/245/346/241/206.md +0 -244
  365. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/063-messagebox/346/266/210/346/201/257/345/274/271/346/241/206.md +0 -527
  366. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/064-rate/350/257/204/345/210/206.md +0 -223
  367. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/065-table/350/241/250/346/240/274.md +0 -1417
  368. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/066-link/351/223/276/346/216/245.md +0 -177
  369. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/067-file-upload/346/226/207/344/273/266/344/270/212/344/274/240.md +0 -389
  370. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/068-text/346/226/207/346/234/254.md +0 -202
  371. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/069-backtop/345/233/236/345/210/260/351/241/266/351/203/250.md +0 -165
  372. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/070-image-upload/345/233/276/347/211/207/344/270/212/344/274/240.md +0 -388
  373. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/071-file-list/346/226/207/344/273/266/345/210/227/350/241/250.md +0 -94
  374. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/072-sublist/345/255/220/350/241/250.md +0 -729
  375. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/073-carousel/350/265/260/351/251/254/347/201/257.md +0 -306
  376. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/075-date-picker/346/227/245/346/234/237/351/200/211/346/213/251.md +0 -580
  377. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/076-colorPicker/351/242/234/350/211/262/351/200/211/346/213/251/345/231/250.md +0 -183
  378. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/077-mention/346/217/220/345/217/212.md +0 -390
  379. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/079-timeselect/346/227/266/351/227/264/351/200/211/346/213/251/345/231/250.md +0 -170
  380. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/080-card/345/215/241/347/211/207.md +0 -198
  381. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/082-datetimepicker/346/227/266/351/227/264/351/200/211/346/213/251.md +0 -392
  382. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/085-timepicker/346/227/266/351/227/264/351/200/211/346/213/251/345/231/250.md +0 -163
  383. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/086-calendar/346/227/245/345/216/206.md +0 -141
  384. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/087-divider/345/210/206/345/211/262/347/272/277.md +0 -77
  385. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/090-upload-service/346/226/207/344/273/266/344/270/212/344/274/240.md +0 -61
  386. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/091-image-upload-service/345/233/276/347/211/207/344/270/212/344/274/240.md +0 -49
  387. package/docs/m8mpdoc-develop/018-EPUI/347/273/204/344/273/266/092-space/351/227/264/350/267/235.md +0 -305
  388. package/docs/m8mpdoc-develop/home-/351/246/226/351/241/265.md +0 -612
  389. package/docs/m8mpdoc-develop/home1-propose.md +0 -45
@@ -1,872 +0,0 @@
1
- # 优先级 A 的规则:必要的 (规避错误)
2
-
3
- <div class="style-guide">
4
-
5
- ## 目录和文件命名 <span class="priority-a">必要</span>
6
-
7
- **工程中的目录与组件文件一律使用 kebab-case 命名,禁止大小写混杂或使用下划线。**
8
-
9
- 跨平台构建时大小写混用的路径最容易出问题,统一短横线小写可以避免在不同操作系统之间出现路径识别异常。
10
-
11
- <div class="style-example example-bad">
12
-
13
- ### 反例:
14
-
15
- ```
16
- components/UserProfile.vue
17
- components/Form_Item.vue
18
- ```
19
-
20
- </div>
21
- <div class="style-example example-good">
22
-
23
- ### 好例子:
24
-
25
- ```
26
- components/user-profile.vue
27
- components/form-item.vue
28
- ```
29
-
30
- </div>
31
-
32
- ## 模板标签与属性使用 kebab-case <span class="priority-a">必要</span>
33
-
34
- **模板内的组件标签和属性绑定全部使用 kebab-case,禁止在模板中写 PascalCase。**
35
-
36
- 保持模板完全小写并用短横线连接,可以避免和原生标签、Web Component 混用时的歧义,也符合新规范的检查规则。
37
-
38
- <div class="style-example example-bad">
39
-
40
- ### 反例:
41
-
42
- ```html
43
- <EpForm primaryType="type"></EpForm>
44
- <ep-input v-model="userName" primaryType="main"></ep-input>
45
- ```
46
-
47
- </div>
48
- <div class="style-example example-good">
49
-
50
- ### 好例子:
51
-
52
- ```html
53
- <ep-form primary-type="type"></ep-form>
54
- <ep-input v-model="userName" primary-type="main"></ep-input>
55
- ```
56
-
57
- </div>
58
-
59
- ## 组件命名规范 <span class="priority-a">必要</span>
60
-
61
- **组件的定义名必须使用 PascalCase,且名称至少由两个单词组成,避免与原生元素冲突。**
62
-
63
- 多单词的 PascalCase 既能确保不会和 HTML 元素同名,又与导出、自动补全保持一致。
64
-
65
- **组件名应该始终是多个单词的,根组件 `App` 以及 `<transition>`、`<component>` 之类的 Vue 内置组件除外。**
66
-
67
- 这样做可以避免跟现有的以及未来的 HTML 元素相冲突,因为所有的 HTML 元素名称都是单个单词的。
68
-
69
- <div class="style-example example-bad">
70
-
71
- ### 反例:
72
-
73
- ```js
74
- export default {
75
- name: 'todo',
76
- // ...
77
- };
78
- ```
79
-
80
- </div>
81
- <div class="style-example example-good">
82
-
83
- ### 好例子:
84
-
85
- ```js
86
- export default {
87
- name: 'TodoItem',
88
- // ...
89
- };
90
- ```
91
-
92
- </div>
93
-
94
- ## 组件属性命名 <span class="priority-a">必要</span>
95
-
96
- **`defineProps` 中的属性名统一使用小驼峰,模板传参使用 kebab-case,不得混用大小写或下划线。**
97
-
98
- 保持脚本与模板的命名映射清晰,避免大小写不一致导致的属性读取失败。
99
-
100
- <div class="style-example example-bad">
101
-
102
- ### 反例:
103
-
104
- ```vue
105
- <script setup>
106
- const props = defineProps({
107
- 'user-name': String,
108
- MaxCount: Number
109
- });
110
- </script>
111
-
112
- <template>
113
- <ep-user-card userName="codex" :MaxCount="10"></ep-user-card>
114
- </template>
115
- ```
116
-
117
- </div>
118
- <div class="style-example example-good">
119
-
120
- ### 好例子:
121
-
122
- ```vue
123
- <script setup>
124
- const props = defineProps({
125
- userName: {
126
- type: String,
127
- required: true
128
- },
129
- maxCount: {
130
- type: Number,
131
- default: 10
132
- }
133
- });
134
- </script>
135
-
136
- <template>
137
- <ep-user-card user-name="codex" :max-count="10"></ep-user-card>
138
- </template>
139
- ```
140
-
141
- </div>
142
-
143
- ## 禁止修改 Props <span class="priority-a">必要</span>
144
-
145
- **组件内部禁止直接修改通过 `defineProps` 声明的入参,必须通过事件或计算属性派生值。**
146
-
147
- 直接赋值会破坏单向数据流,引发状态不同步。
148
-
149
- <div class="style-example example-bad">
150
-
151
- ### 反例:
152
-
153
- ```vue
154
- <script setup>
155
- const props = defineProps({ visible: Boolean });
156
-
157
- props.visible = false;
158
- </script>
159
- ```
160
-
161
- </div>
162
- <div class="style-example example-good">
163
-
164
- ### 好例子:
165
-
166
- ```vue
167
- <script setup>
168
- const props = defineProps({ visible: Boolean });
169
- const emit = defineEmits(['update:visible']);
170
-
171
- const hide = () => emit('update:visible', false);
172
- </script>
173
-
174
- <template>
175
- <ep-dialog :visible="visible" @close="hide"></ep-dialog>
176
- </template>
177
- ```
178
-
179
- </div>
180
-
181
- ## defineProps / defineEmits 规范 <span class="priority-a">必要</span>
182
-
183
- **严格按 Vue 3 官方写法使用 `defineProps` 与 `defineEmits`,事件必须显式声明后再调用。**
184
-
185
- 禁止传入运行时动态值或未声明事件的 `emit`,确保类型推导与校验生效。
186
-
187
- <div class="style-example example-bad">
188
-
189
- ### 反例:
190
-
191
- ```vue
192
- <script setup>
193
- const props = defineProps(runtimeProps);
194
-
195
- const submit = (payload) => {
196
- emit('submit', payload); // emit 未声明
197
- };
198
- </script>
199
- ```
200
-
201
- </div>
202
- <div class="style-example example-good">
203
-
204
- ### 好例子:
205
-
206
- ```vue
207
- <script setup lang="ts">
208
- const props = defineProps<{
209
- modelValue: string;
210
- disabled?: boolean;
211
- }>();
212
-
213
- const emit = defineEmits<{
214
- (e: 'update:modelValue', value: string): void;
215
- (e: 'submit'): void;
216
- }>();
217
-
218
- const submit = (payload: string) => {
219
- emit('update:modelValue', payload);
220
- emit('submit');
221
- };
222
- </script>
223
- ```
224
-
225
- </div>
226
-
227
- ## #组件数据 <span class="priority-a">必要</span>
228
-
229
- **组件的 `data` 必须是一个函数。**
230
-
231
- 当在组件中使用 `data` property 的时候 (除了 new Vue 外的任何地方),它的值必须是返回一个对象的函数。
232
-
233
- <div class="style-example example-bad">
234
-
235
- ### 反例:
236
-
237
- ```js
238
- export default {
239
- data: {
240
- foo: 'bar',
241
- },
242
- };
243
- ```
244
-
245
- </div>
246
- <div class="style-example example-good">
247
-
248
- ### 好例子:
249
-
250
- ```js
251
- // 在单独的 vue 文件中
252
- export default {
253
- data() {
254
- return {
255
- foo: 'bar',
256
- };
257
- },
258
- };
259
- ```
260
-
261
- </div>
262
-
263
- ## 计算属性禁止使用异步 <span class="priority-a">必要</span>
264
-
265
- **计算属性只能包含同步逻辑,异步请求应放到生命周期或方法中再回填结果。**
266
-
267
- 异步计算属性不会按预期更新依赖,可能导致渲染时机不确定。
268
-
269
- <div class="style-example example-bad">
270
-
271
- ### 反例:
272
-
273
- ```vue
274
- <script setup>
275
- const totalPrice = computed(async () => {
276
- const res = await fetch('/api/order');
277
- return res.total;
278
- });
279
- </script>
280
- ```
281
-
282
- </div>
283
- <div class="style-example example-good">
284
-
285
- ### 好例子:
286
-
287
- ```vue
288
- <script setup>
289
- import { onMounted, ref, computed } from 'vue';
290
-
291
- const orderTotal = ref(0);
292
-
293
- onMounted(async () => {
294
- const res = await fetch('/api/order').then((r) => r.json());
295
- orderTotal.value = res.total;
296
- });
297
-
298
- const totalPrice = computed(() => orderTotal.value);
299
- </script>
300
- ```
301
-
302
- </div>
303
-
304
- ## 避免重复的 key 定义 <span class="priority-a">必要</span>
305
-
306
- **`props`、`data`、`computed` 等对象内禁止出现重复的字段,避免后者覆盖前者导致逻辑混乱。**
307
-
308
- <div class="style-example example-bad">
309
-
310
- ### 反例:
311
-
312
- ```vue
313
- <script setup>
314
- import { reactive } from 'vue';
315
-
316
- const props = defineProps({
317
- userInfo: Object,
318
- userInfo: Array
319
- });
320
-
321
- const state = reactive({
322
- userInfo: {},
323
- userInfo: []
324
- });
325
- </script>
326
- ```
327
-
328
- </div>
329
- <div class="style-example example-good">
330
-
331
- ### 好例子:
332
-
333
- ```vue
334
- <script setup>
335
- import { reactive } from 'vue';
336
-
337
- const props = defineProps({
338
- userInfo: {
339
- type: Object,
340
- default: () => ({})
341
- }
342
- });
343
-
344
- const state = reactive({
345
- userProfile: {}
346
- });
347
- </script>
348
- ```
349
-
350
- </div>
351
-
352
- ## 禁止未使用的组件或变量 <span class="priority-a">必要</span>
353
-
354
- **注册的组件、声明的变量或模板参数必须被实际使用,避免死代码与包体积膨胀。**
355
-
356
- <div class="style-example example-bad">
357
-
358
- ### 反例:
359
-
360
- ```vue
361
- <script setup>
362
- import EpButton from './ep-button.vue';
363
- import EpTable from './ep-table.vue';
364
- import { ref } from 'vue';
365
-
366
- const count = ref(0);
367
- const unused = ref(true);
368
- </script>
369
-
370
- <template>
371
- <ep-table></ep-table>
372
- </template>
373
- ```
374
-
375
- </div>
376
- <div class="style-example example-good">
377
-
378
- ### 好例子:
379
-
380
- ```vue
381
- <script setup>
382
- import EpButton from './ep-button.vue';
383
- import EpTable from './ep-table.vue';
384
- import { ref } from 'vue';
385
-
386
- const count = ref(0);
387
- </script>
388
-
389
- <template>
390
- <ep-table></ep-table>
391
- <ep-button @click="count++">点击 {{ count }}</ep-button>
392
- </template>
393
- ```
394
-
395
- </div>
396
-
397
- ## #为 `v-for` 设置键值 <span class="priority-a">必要</span>
398
-
399
- **总是用 `key` 配合 `v-for`。**
400
-
401
- 在组件上总是必须用 `key` 配合 `v-for`,以便维护内部组件及其子树的状态。甚至在元素上维护可预测的行为,比如动画中的对象固化 (object constancy),也是一种好的做法。
402
-
403
- <details>
404
-
405
- <summary>
406
- <h4>详解</h4>
407
- </summary>
408
-
409
- 假设你有一个待办事项列表:
410
-
411
- ```js
412
- data: function () {
413
- return {
414
- todos: [
415
- {
416
- id: 1,
417
- text: '学习使用 v-for'
418
- },
419
- {
420
- id: 2,
421
- text: '学习使用 key'
422
- }
423
- ]
424
- }
425
- }
426
- ```
427
-
428
- 然后你把它们按照字母顺序排序。在更新 DOM 的时候,Vue 将会优化渲染把可能的 DOM 变更降到最低。即可能删掉第一个待办事项元素,然后把它重新加回到列表的最末尾。
429
-
430
- 这里的问题在于,不要删除仍然会留在 DOM 中的元素。比如你想使用 `<transition-group>` 给列表加过渡动画,或想在被渲染元素是 `<input>` 时保持聚焦。在这些情况下,为每一个项目添加一个唯一的键值 (比如 `:key="todo.id"`) 将会让 Vue 知道如何使行为更容易预测。
431
-
432
- 根据我们的经验,最好*始终*添加一个唯一的键值,以便你和你的团队永远不必担心这些极端情况。也在少数对性能有严格要求的情况下,为了避免对象固化,你可以刻意做一些非常规的处理。
433
-
434
- </details>
435
-
436
- <div class="style-example example-bad">
437
-
438
- ### 反例:
439
-
440
- ```html
441
- <ul>
442
- <li v-for="todo in todos">{{ todo.text }}</li>
443
- </ul>
444
- ```
445
-
446
- </div>
447
- <div class="style-example example-good">
448
-
449
- ### 好例子:
450
-
451
- ```html
452
- <ul>
453
- <li v-for="todo in todos" :key="todo.id">{{ todo.text }}</li>
454
- </ul>
455
- ```
456
-
457
- </div>
458
-
459
- ## #避免 `v-if` 和 `v-for` 用在一起 <span class="priority-a">必要</span>
460
-
461
- **永远不要把 v-if 和 v-for 同时用在同一个元素上。**
462
-
463
- 一般我们在两种常见的情况下会倾向于这样做:
464
-
465
- 为了过滤一个列表中的项目 (比如 `v-for="user in users" v-if="user.isActive"`)。在这种情形下,请将 `users` 替换为一个计算属性 (比如 `activeUsers`),让其返回过滤后的列表。
466
-
467
- 为了避免渲染本应该被隐藏的列表 (比如 `v-for="user in users" v-if="shouldShowUsers"`)。这种情形下,请将 `v-if` 移动至容器元素上 (比如 `ul`、`ol`)。
468
-
469
- <details>
470
-
471
- <summary>
472
-
473
- <h4>详解</h4>
474
-
475
- </summary>
476
-
477
- 当 Vue 处理指令时,`v-for` 比 `v-if` 具有更高的优先级,所以这个模板:
478
-
479
- ```html
480
- <ul>
481
- <li v-for="user in users" v-if="user.isActive" :key="user.id">{{ user.name }}</li>
482
- </ul>
483
- ```
484
-
485
- 将会经过如下运算:
486
-
487
- ```js
488
- this.users.map(function (user) {
489
- if (user.isActive) {
490
- return user.name;
491
- }
492
- });
493
- ```
494
-
495
- 因此哪怕我们只渲染出一小部分用户的元素,也得在每次重渲染的时候遍历整个列表,不论活跃用户是否发生了变化。
496
-
497
- 通过将其更换为在如下的一个计算属性上遍历:
498
-
499
- ```js
500
- computed: {
501
- activeUsers: function () {
502
- return this.users.filter(function (user) {
503
- return user.isActive
504
- })
505
- }
506
- }
507
- ```
508
-
509
- ```html
510
- <ul>
511
- <li v-for="user in activeUsers" :key="user.id">{{ user.name }}</li>
512
- </ul>
513
- ```
514
-
515
- 我们将会获得如下好处:
516
-
517
- - 过滤后的列表*只*会在 `users` 数组发生相关变化时才被重新运算,过滤更高效。
518
- - 使用 `v-for="user in activeUsers"` 之后,我们在渲染的时候*只*遍历活跃用户,渲染更高效。
519
- - 解耦渲染层的逻辑,可维护性 (对逻辑的更改和扩展) 更强。
520
-
521
- 为了获得同样的好处,我们也可以把:
522
-
523
- ```html
524
- <ul>
525
- <li v-for="user in users" v-if="shouldShowUsers" :key="user.id">{{ user.name }}</li>
526
- </ul>
527
- ```
528
-
529
- 更新为:
530
-
531
- ```html
532
- <ul v-if="shouldShowUsers">
533
- <li v-for="user in users" :key="user.id">{{ user.name }}</li>
534
- </ul>
535
- ```
536
-
537
- 通过将 `v-if` 移动到容器元素,我们不会再对列表中的*每个*用户检查 `shouldShowUsers`。取而代之的是,我们只检查它一次,且不会在 `shouldShowUsers` 为否的时候运算 `v-for`。
538
-
539
- </details>
540
-
541
- <div class="style-example example-bad">
542
-
543
- ### 反例:
544
-
545
- ```html
546
- <ul>
547
- <li v-for="user in users" v-if="user.isActive" :key="user.id">{{ user.name }}</li>
548
- </ul>
549
- ```
550
-
551
- ```html
552
- <ul>
553
- <li v-for="user in users" v-if="shouldShowUsers" :key="user.id">{{ user.name }}</li>
554
- </ul>
555
- ```
556
-
557
- </div>
558
- <div class="style-example example-good">
559
-
560
- ### 好例子:
561
-
562
- ```html
563
- <ul>
564
- <li v-for="user in activeUsers" :key="user.id">{{ user.name }}</li>
565
- </ul>
566
- ```
567
-
568
- ```html
569
- <ul v-if="shouldShowUsers">
570
- <li v-for="user in users" :key="user.id">{{ user.name }}</li>
571
- </ul>
572
- ```
573
-
574
- </div>
575
-
576
- ## 禁止直接使用 v-html 渲染不可信内容 <span class="priority-a">必要</span>
577
-
578
- **避免使用 `v-html` 直接渲染接口返回或用户可控的 HTML,必须经过安全过滤后再使用。**
579
-
580
- 直接插入不可信内容会带来 XSS 风险。
581
-
582
- <div class="style-example example-bad">
583
-
584
- ### 反例:
585
-
586
- ```html
587
- <template>
588
- <div v-html="serverHtml"></div>
589
- </template>
590
- ```
591
-
592
- </div>
593
- <div class="style-example example-good">
594
-
595
- ### 好例子:
596
-
597
- ```html
598
- <template>
599
- <div v-html="safeHtml"></div>
600
- </template>
601
-
602
- <script setup>
603
- import { computed } from 'vue';
604
- import { sanitize } from '@/utils/sanitize-html';
605
-
606
- const props = defineProps({ content: String });
607
- const safeHtml = computed(() => sanitize(props.content || ''));
608
- </script>
609
- ```
610
-
611
- </div>
612
-
613
- ## #为组件样式设置作用域 <span class="priority-a">必要</span>
614
-
615
- **对于应用来说,顶级 `App` 组件和布局组件中的样式可以是全局的,但是其它所有组件都应该是有作用域的,可通过 `<style scoped>` 或 CSS Modules 实现。**
616
-
617
- 这让覆写内部样式更容易:使用了常人可理解的 class 名称且没有太高的选择器优先级,而且不太会导致冲突。
618
-
619
- <details>
620
- <summary>
621
- <h4>详解</h4>
622
- </summary>
623
-
624
- 如果你和其他开发者一起开发一个大型工程,或有时引入三方 HTML/CSS (比如来自 Auth0),设置一致的作用域会确保你的样式只会运用在它们想要作用的组件上。
625
-
626
- 不止要使用 `scoped` attribute,使用唯一的 class 名可以帮你确保那些三方库的 CSS 不会运用在你自己的 HTML 上。比如许多工程都使用了 `button`、`btn` 或 `icon` class 名,所以即便你不使用类似 BEM 的策略,添加一个 app 专属或组件专属的前缀 (比如 `ButtonClose-icon`) 也可以提供很多保护。
627
-
628
- </details>
629
-
630
- <div class="style-example example-bad">
631
-
632
- ### 反例:
633
-
634
- ```html
635
- <template>
636
- <button class="btn btn-close">X</button>
637
- </template>
638
-
639
- <style>
640
- .btn-close {
641
- background-color: red;
642
- }
643
- </style>
644
- ```
645
-
646
- </div>
647
- <div class="style-example example-good">
648
-
649
- ### 好例子:
650
-
651
- ```html
652
- <template>
653
- <button class="button button-close">X</button>
654
- </template>
655
-
656
- <!-- 使用 `scoped` attribute -->
657
- <style scoped>
658
- .button {
659
- border: none;
660
- border-radius: 2px;
661
- }
662
-
663
- .button-close {
664
- background-color: red;
665
- }
666
- </style>
667
- ```
668
-
669
- </div>
670
-
671
- ## 数据模型必须在 `<script setup>` 中创建 <span class="priority-a">必要</span>
672
-
673
- **数据模型的创建必须放在组件的 `<script setup>` 里完成,禁止在单独的 JS 文件里直接生成模型实例。**
674
-
675
- 集中在组件内定义可以确保依赖、生命周期一致,避免被误复用或遗漏初始化。
676
-
677
- <div class="style-example example-bad">
678
-
679
- ### 反例:
680
-
681
- ```js
682
- // model.js
683
- export const model = Utils.definedDataModel(() => ({
684
- name: '',
685
- age: 0
686
- }));
687
- ```
688
-
689
- </div>
690
- <div class="style-example example-good">
691
-
692
- ### 好例子:
693
-
694
- ```vue
695
- <script setup>
696
- import { Utils } from '@epoint/ep-ui';
697
-
698
- const model = Utils.definedDataModel(() => ({
699
- name: '',
700
- age: 0
701
- }));
702
- </script>
703
- ```
704
-
705
- </div>
706
-
707
- ## 静态资源就近存放 <span class="priority-a">必要</span>
708
-
709
- **页面相关的图片、样式、脚本等静态资源应放在页面自身目录下,全局目录仅放通用资源。**
710
-
711
- 就近存放能避免全局污染和资源冲突,也便于按需清理。
712
-
713
- <div class="style-example example-bad">
714
-
715
- ### 反例:
716
-
717
- ```bash
718
- src/assets/
719
- |- user-banner.png # 仅用户页使用
720
- pages/user/index.vue
721
- ```
722
-
723
- </div>
724
- <div class="style-example example-good">
725
-
726
- ### 好例子:
727
-
728
- ```bash
729
- pages/user/
730
- |- assets/
731
- | |- banner.png
732
- |- index.vue
733
- ```
734
-
735
- </div>
736
-
737
- ## 私有 property 名 <span class="priority-a">必要</span>
738
-
739
- **使用模块作用域保持不允许外部访问的函数的私有性。如果无法做到这一点,就始终为插件、混入等不考虑作为对外公共 API 的自定义私有 property 使用 `$_` 前缀。并附带一个命名空间以回避和其它作者的冲突 (比如 `$_yourPluginName_`)。**
740
-
741
-
742
- <details>
743
- <summary>
744
- <h4>详解</h4>
745
- </summary>
746
-
747
- Vue 使用 `_` 前缀来定义其自身的私有 property,所以使用相同的前缀 (比如 `_update`) 有覆写实例 property 的风险。即便你检查确认 Vue 当前版本没有用到这个 property 名,也不能保证和将来的版本没有冲突。
748
-
749
- 对于 `$` 前缀来说,其在 Vue 生态系统中的目的是暴露给用户的一个特殊的实例 property,所以把它用于*私有* property 并不合适。
750
-
751
- 不过,我们推荐把这两个前缀结合为 `$_`,作为一个用户定义的私有 property 的约定,以确保不会和 Vue 自身相冲突。
752
-
753
- </details>
754
-
755
- <div class="style-example example-bad">
756
-
757
- ### 反例:
758
-
759
- ``` js
760
- var myGreatMixin = {
761
- // ...
762
- methods: {
763
- update: function () {
764
- // ...
765
- }
766
- }
767
- }
768
- ```
769
-
770
- ``` js
771
- var myGreatMixin = {
772
- // ...
773
- methods: {
774
- _update: function () {
775
- // ...
776
- }
777
- }
778
- }
779
- ```
780
-
781
- ``` js
782
- var myGreatMixin = {
783
- // ...
784
- methods: {
785
- $update: function () {
786
- // ...
787
- }
788
- }
789
- }
790
- ```
791
-
792
- ``` js
793
- var myGreatMixin = {
794
- // ...
795
- methods: {
796
- $_update: function () {
797
- // ...
798
- }
799
- }
800
- }
801
- ```
802
-
803
-
804
- </div>
805
- <div class="style-example example-good">
806
-
807
- ### 好例子:
808
-
809
- ``` js
810
- var myGreatMixin = {
811
- // ...
812
- methods: {
813
- $_myGreatMixin_update: function () {
814
- // ...
815
- }
816
- }
817
- }
818
- ```
819
-
820
- ``` js
821
- // 甚至更好!
822
- var myGreatMixin = {
823
- // ...
824
- methods: {
825
- publicMethod() {
826
- // ...
827
- myPrivateFunction()
828
- }
829
- }
830
- }
831
-
832
- function myPrivateFunction() {
833
- // ...
834
- }
835
-
836
- export default myGreatMixin
837
- ```
838
-
839
- </div>
840
-
841
-
842
- </div>
843
- <style>
844
- .priority-a {
845
- color: #f44336;
846
- font-size: 12px
847
- }
848
- .style-guide summary {
849
- display: list-item;
850
- cursor: pointer;
851
- padding: 1.6em;
852
- margin: -1.6em;
853
- outline: none;
854
- }
855
- .style-guide details, .style-guide .style-enforcement {
856
- background-color: #eee;
857
- }
858
- .style-guide details h4 {
859
- display: inline-block;
860
- }
861
- .style-example, .style-guide details, .style-guide .style-enforcement {
862
- border-radius: 2px;
863
- margin: 1.6em 0;
864
- padding: 12px;
865
- }
866
- .style-example.example-bad {
867
- background: #f7e8e8;
868
- }
869
- .style-guide .style-example.example-good {
870
- background: #eaedec;
871
- }
872
- </style>