m8-mcp-server 1.0.0 → 1.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +153 -30
- package/dist/cli.d.ts +9 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +14 -0
- package/dist/cli.js.map +1 -0
- package/dist/docs/apis.d.ts +38 -0
- package/dist/docs/apis.d.ts.map +1 -0
- package/dist/docs/apis.js +326 -0
- package/dist/docs/apis.js.map +1 -0
- package/dist/docs/components.d.ts +45 -0
- package/dist/docs/components.d.ts.map +1 -0
- package/dist/docs/components.js +186 -0
- package/dist/docs/components.js.map +1 -0
- package/dist/docs/index.d.ts +94 -0
- package/dist/docs/index.d.ts.map +1 -0
- package/dist/docs/index.js +182 -0
- package/dist/docs/index.js.map +1 -0
- package/dist/docs/loader.d.ts +51 -0
- package/dist/docs/loader.d.ts.map +1 -0
- package/dist/docs/loader.js +165 -0
- package/dist/docs/loader.js.map +1 -0
- package/dist/docs/search.d.ts +28 -0
- package/dist/docs/search.d.ts.map +1 -0
- package/dist/docs/search.js +196 -0
- package/dist/docs/search.js.map +1 -0
- package/dist/docs/standards.d.ts +41 -0
- package/dist/docs/standards.d.ts.map +1 -0
- package/dist/docs/standards.js +134 -0
- package/dist/docs/standards.js.map +1 -0
- package/dist/docs/utils.d.ts +46 -0
- package/dist/docs/utils.d.ts.map +1 -0
- package/dist/docs/utils.js +129 -0
- package/dist/docs/utils.js.map +1 -0
- package/dist/generator/header.d.ts +32 -0
- package/dist/generator/header.d.ts.map +1 -0
- package/dist/generator/header.js +83 -0
- package/dist/generator/header.js.map +1 -0
- package/dist/generator/index.d.ts +50 -0
- package/dist/generator/index.d.ts.map +1 -0
- package/dist/generator/index.js +387 -0
- package/dist/generator/index.js.map +1 -0
- package/dist/generator/vue-template.d.ts +54 -0
- package/dist/generator/vue-template.d.ts.map +1 -0
- package/dist/generator/vue-template.js +191 -0
- package/dist/generator/vue-template.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +73 -1
- package/dist/index.js.map +1 -0
- package/dist/recommend/index.d.ts +27 -0
- package/dist/recommend/index.d.ts.map +1 -0
- package/dist/recommend/index.js +412 -0
- package/dist/recommend/index.js.map +1 -0
- package/dist/tools/generate-code.d.ts +18 -0
- package/dist/tools/generate-code.d.ts.map +1 -0
- package/dist/tools/generate-code.js +155 -0
- package/dist/tools/generate-code.js.map +1 -0
- package/dist/tools/get-api-info.d.ts +18 -0
- package/dist/tools/get-api-info.d.ts.map +1 -0
- package/dist/tools/get-api-info.js +65 -0
- package/dist/tools/get-api-info.js.map +1 -0
- package/dist/tools/get-coding-standard.d.ts +18 -0
- package/dist/tools/get-coding-standard.d.ts.map +1 -0
- package/dist/tools/get-coding-standard.js +66 -0
- package/dist/tools/get-coding-standard.js.map +1 -0
- package/dist/tools/get-component-info.d.ts +18 -0
- package/dist/tools/get-component-info.d.ts.map +1 -0
- package/dist/tools/get-component-info.js +60 -0
- package/dist/tools/get-component-info.js.map +1 -0
- package/dist/tools/get-util-info.d.ts +18 -0
- package/dist/tools/get-util-info.d.ts.map +1 -0
- package/dist/tools/get-util-info.js +65 -0
- package/dist/tools/get-util-info.js.map +1 -0
- package/dist/tools/index.d.ts +56 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +101 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/recommend-solution.d.ts +18 -0
- package/dist/tools/recommend-solution.d.ts.map +1 -0
- package/dist/tools/recommend-solution.js +67 -0
- package/dist/tools/recommend-solution.js.map +1 -0
- package/dist/tools/search-docs.d.ts +18 -0
- package/dist/tools/search-docs.d.ts.map +1 -0
- package/dist/tools/search-docs.js +71 -0
- package/dist/tools/search-docs.js.map +1 -0
- package/dist/types/index.d.ts +285 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +8 -0
- package/dist/types/index.js.map +1 -0
- package/package.json +27 -26
- package/resources/cases/.gitkeep +0 -0
- package/resources/cases/form-submit-vue2.json +15 -0
- package/resources/cases/index.json +8 -0
- package/resources/cases/list-detail-vue2.json +27 -0
- package/resources/components/.gitkeep +0 -0
- package/resources/components/button.json +74 -0
- package/resources/components/cell.json +69 -0
- package/resources/components/field.json +88 -0
- package/resources/components/index.json +72 -0
- package/resources/standards/.gitkeep +0 -0
- package/resources/standards/css.json +108 -0
- package/resources/standards/javascript.json +129 -0
- package/resources/standards/project-structure.json +101 -0
- package/resources/standards/vue.json +122 -0
- package/resources/utils/.gitkeep +0 -0
- package/resources/utils/ajax.json +76 -0
- package/resources/utils/common.json +129 -0
- package/resources/utils/index.json +7 -0
- package/resources/utils/string.json +112 -0
- package/bin/m8-mcp.js +0 -2
- package/dist/constants.js +0 -1
- package/dist/data/ejs-doc/api_audio/api_audio.md +0 -225
- package/dist/data/ejs-doc/api_auth/api_auth.md +0 -256
- package/dist/data/ejs-doc/api_contact/api_contact.md +0 -295
- package/dist/data/ejs-doc/api_contact/images/component_contact.jpg +0 -0
- package/dist/data/ejs-doc/api_device/api_device.md +0 -761
- package/dist/data/ejs-doc/api_event/api_event.md +0 -244
- package/dist/data/ejs-doc/api_global/api_global.md +0 -440
- package/dist/data/ejs-doc/api_io/api_io.md +0 -369
- package/dist/data/ejs-doc/api_navigator/api_navigator.md +0 -654
- package/dist/data/ejs-doc/api_navigator/images/navigator.backbtn.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.hide.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.hidestatus.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.leftarrowbtn.jpg +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.leftbtn.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.leftbtnimg.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.multititle.jpg +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtn.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtn2.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtnimg.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.rightbtnimg2.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.rightmenu.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.searchbar.png +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.subtitle.jpg +0 -0
- package/dist/data/ejs-doc/api_navigator/images/navigator.title.png +0 -0
- package/dist/data/ejs-doc/api_page/api_page.md +0 -261
- package/dist/data/ejs-doc/api_runtime/api_runtime.md +0 -788
- package/dist/data/ejs-doc/api_storage/api_storage.md +0 -320
- package/dist/data/ejs-doc/api_stream/api_stream.md +0 -152
- package/dist/data/ejs-doc/api_stream/images/body_multiform.jpg +0 -0
- package/dist/data/ejs-doc/api_ui/api_ui.md +0 -836
- package/dist/data/ejs-doc/api_ui/images/ui.popwindow.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_actionsheet.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_alert.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_confirm.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_pickDateTime.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_pickdate.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_pickmonth.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_picktime.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_poppicker.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_poppicker2.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_poppicker3.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_prompt.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_select.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_select2.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_select3.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_showdebugdialog.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_showwaiting.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_toast.png +0 -0
- package/dist/data/ejs-doc/api_ui/images/ui_toastAndEvent.png +0 -0
- package/dist/data/ejs-doc/api_util/api_util.md +0 -615
- package/dist/data/ejs-doc/api_util/images/util.playvideo.png +0 -0
- package/dist/data/ejs-doc/api_util/images/util.previmage.png +0 -0
- package/dist/data/ejs-doc/api_util/images/util.selectfile.png +0 -0
- package/dist/data/ejs-doc/api_util/images/util.selectimage.png +0 -0
- 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 +0 -247
- 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 +0 -276
- 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 +0 -130
- 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 +0 -115
- 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 +0 -398
- 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 +0 -456
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/000-charset.md +0 -128
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/001-base64.md +0 -142
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/002-date.md +0 -210
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/004-math.md +0 -85
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/006-sha1.md +0 -21
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/007-sha256.md +0 -36
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/008-storage.md +0 -128
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/009-string.md +0 -148
- 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 +0 -76
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/011-cookie.md +0 -59
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/012-util-sm.md +0 -95
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-1.baseapi.md +0 -76
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.network.md +0 -202
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.socketTask.md +0 -92
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-3.uiapi.md +0 -412
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-4.eventapi.md +0 -146
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-5.otherapi.md +0 -137
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/014-util-mpVerifyManager.md +0 -363
- 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 +0 -188
- 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 +0 -460
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/004-amap/345/234/260/345/233/276.md +0 -285
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/005-button/346/214/211/351/222/256.md +0 -211
- 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 +0 -213
- 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 +0 -501
- 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 +0 -168
- 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 +0 -617
- 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 +0 -539
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/015-form/350/241/250/345/215/225.md +0 -999
- 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 +0 -150
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/019-icon/345/233/276/346/240/207.md +0 -133
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/020-loading/345/212/240/350/275/275.md +0 -117
- 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 +0 -152
- 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 +0 -427
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/023-pagination/345/210/206/351/241/265.md +0 -212
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/024-panel/351/235/242/346/235/277.md +0 -85
- 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 +0 -175
- 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 +0 -519
- 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 +0 -152
- 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 +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 +0 -285
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/030-rate/350/257/204/345/210/206.md +0 -189
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/031-search/346/220/234/347/264/242.md +0 -217
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/032-slider/346/273/221/345/235/227.md +0 -166
- 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 +0 -340
- 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 +0 -265
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/036-switch/345/274/200/345/205/263.md +0 -196
- 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 +0 -115
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/038-tag/346/240/207/350/256/260.md +0 -232
- 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 +0 -631
- 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 +0 -531
- 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 +0 -111
- 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 +0 -337
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/043-layout/345/270/203/345/261/200.md +0 -150
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/044-image/345/233/276/347/211/207.md +0 -144
- 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 +0 -429
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/046-calendar/346/227/245/345/216/206.md +0 -467
- 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 +0 -295
- 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 +0 -577
- 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 +0 -491
- 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 +0 -265
- 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 +0 -203
- 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 +0 -139
- 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 +0 -199
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/054-grid/345/256/253/346/240/274.md +0 -183
- 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 +0 -289
- 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 +0 -97
- 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 +0 -146
- 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 +0 -292
- 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 +0 -120
- 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 +0 -114
- 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 +0 -119
- 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 +0 -208
- 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 +0 -161
- 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 +0 -248
- 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 +0 -314
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/066-badge/345/276/275/346/240/207.md +0 -162
- 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 +0 -325
- 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 +0 -360
- 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 +0 -595
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/070-swipe/350/275/256/346/222/255.md +0 -262
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/071-/345/233/275/351/231/205/345/214/226.md +0 -51
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/072-easycalendar/346/227/245/345/216/206.md +0 -132
- 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 +0 -1538
- 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 +0 -261
- 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 +0 -161
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/076-chart/345/233/276/350/241/250.md +0 -381
- 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 +0 -531
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/078-table/350/241/250/346/240/274.md +0 -849
- 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 +0 -116
- package/dist/data/standards/css-style.md +0 -531
- package/dist/data/standards/js-style.md +0 -394
- package/dist/data/standards/project-structure.md +0 -325
- package/dist/data/standards/vue-style.md +0 -644
- package/dist/tools/search.js +0 -1
- package/dist/tools/standards.js +0 -1
package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-5.otherapi.md
DELETED
|
@@ -1,137 +0,0 @@
|
|
|
1
|
-
# 扩展-其他API
|
|
2
|
-
|
|
3
|
-
## 使用场景
|
|
4
|
-
|
|
5
|
-
一些扩展的API。
|
|
6
|
-
|
|
7
|
-
### Util.openSetting(OBJECT)
|
|
8
|
-
|
|
9
|
-
调起客户端小程序设置界面,返回用户设置的操作结果。
|
|
10
|
-
|
|
11
|
-
**平台差异**
|
|
12
|
-
|
|
13
|
-
| H5 | 新点小程序 | 微信小程序 | 支付宝小程序 |
|
|
14
|
-
| :---: | :--------: | :--------: | :----------: |
|
|
15
|
-
| X | X | √ | √ |
|
|
16
|
-
|
|
17
|
-
|属性|类型|必填|说明|
|
|
18
|
-
|---|---|---|---|---|
|
|
19
|
-
|success|function|否|接口调用成功的回调函数|
|
|
20
|
-
|fail|function|否|接口调用失败的回调函数|
|
|
21
|
-
|complete|function|否|接口调用结束的回调函数(调用成功、失败都会执行)|
|
|
22
|
-
|
|
23
|
-
**success 返回参数**
|
|
24
|
-
|
|
25
|
-
|属性|类型|说明|
|
|
26
|
-
|---|---|---|
|
|
27
|
-
|authSetting|Object|用户授权结果,其中 key 为 [scope](#scope-列表) 值,value 为 Boolean 值,表示用户是否允许授权|
|
|
28
|
-
|
|
29
|
-
**代码示例**
|
|
30
|
-
|
|
31
|
-
```javascript
|
|
32
|
-
Util.openSetting({
|
|
33
|
-
success(res) {
|
|
34
|
-
console.log(res.authSetting)
|
|
35
|
-
}
|
|
36
|
-
});
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
### Util.getSetting(OBJECT)
|
|
40
|
-
获取用户的当前设置。
|
|
41
|
-
|
|
42
|
-
**平台差异**
|
|
43
|
-
|
|
44
|
-
| H5 | 新点小程序 | 微信小程序 | 支付宝小程序 |
|
|
45
|
-
| :---: | :--------: | :--------: | :----------: |
|
|
46
|
-
| X | X | √ | √ |
|
|
47
|
-
|
|
48
|
-
|属性|类型|默认值|必填|说明|
|
|
49
|
-
|---|---|---|---|---|
|
|
50
|
-
|withSubscriptions|Boolean|false |否|是否同时获取用户订阅消息的订阅状态,默认不获取。注意:withSubscriptions 只返回用户勾选过订阅面板中的“总是保持以上选择,不再询问”的订阅消息。 **(微信小程序 2.10.1 支持)**|
|
|
51
|
-
|success|function||否|接口调用成功的回调函数|
|
|
52
|
-
|fail|function||否|接口调用失败的回调函数|
|
|
53
|
-
|complete|function||否|接口调用结束的回调函数(调用成功、失败都会执行)|
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
**success 返回参数**
|
|
57
|
-
|
|
58
|
-
|属性|类型|说明|
|
|
59
|
-
|---|---|---|
|
|
60
|
-
|authSetting|Object|用户授权结果,其中 key 为 [scope](#scope-列表) 值,value 为 Boolean 值,表示用户是否允许授权|
|
|
61
|
-
|subscriptionsSetting|SubscriptionsSetting|用户订阅消息设置,接口参数`withSubscriptions`值为`true`时才会返回。**(微信小程序 2.10.1 支持)**|
|
|
62
|
-
|
|
63
|
-
#### 示例代码
|
|
64
|
-
```js
|
|
65
|
-
Util.getSetting({
|
|
66
|
-
success(res) {
|
|
67
|
-
console.log(res.authSetting)
|
|
68
|
-
}
|
|
69
|
-
})
|
|
70
|
-
```
|
|
71
|
-
|
|
72
|
-
##### scope-列表
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
| scope | 描述 | 平台差异说明 |
|
|
76
|
-
| ---------------------------- | ------------ | ----------------------------------- |
|
|
77
|
-
| scope.userInfo | 用户信息 | |
|
|
78
|
-
| scope.userLocation | 地理位置 | |
|
|
79
|
-
| scope.userLocationBackground | 后台定位 | 微信小程序 |
|
|
80
|
-
| scope.address | 通信地址 | |
|
|
81
|
-
| scope.record | 录音功能 | |
|
|
82
|
-
| scope.writePhotosAlbum | 保存到相册 | |
|
|
83
|
-
| scope.camera | 摄像头 | |
|
|
84
|
-
| scope.invoice | 获取发票 | 微信小程序 |
|
|
85
|
-
| scope.invoiceTitle | 发票抬头 | 微信小程序 |
|
|
86
|
-
| scope.werun | 微信运动步数 | 微信小程序 |
|
|
87
|
-
|
|
88
|
-
注意:scope.userLocation 权限需要在 manifest.json 配置 permission
|
|
89
|
-
|
|
90
|
-
### Util.getAccountInfoSync()
|
|
91
|
-
|
|
92
|
-
获取当前帐号信息,可以返回小程序的Appid。
|
|
93
|
-
|
|
94
|
-
**平台差异**
|
|
95
|
-
|
|
96
|
-
| H5 | 新点小程序 | 微信小程序 | 支付宝小程序 |
|
|
97
|
-
| :---: | :--------: | :--------: | :----------: |
|
|
98
|
-
| X | X | √ | X |
|
|
99
|
-
|
|
100
|
-
**返回值**
|
|
101
|
-
|
|
102
|
-
**Object**
|
|
103
|
-
|
|
104
|
-
帐号信息
|
|
105
|
-
|
|
106
|
-
| 属性 | 类型 | 说明 |
|
|
107
|
-
| --- | --- | --- |
|
|
108
|
-
| miniProgram | Object| 小程序帐号信息 |
|
|
109
|
-
| plugin | Object | 插件帐号信息(仅在插件中调用时包含这一项) |
|
|
110
|
-
| appName | string| 智能小程序名称 (仅百度小程序支持) |
|
|
111
|
-
| lastAppURL | string| 智能小程序最近一次打开的调起协议 (仅百度小程序支持) |
|
|
112
|
-
| scheme | string| 调起协议的协议头 (仅百度小程序支持) |
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
**miniProgram 的结构**
|
|
116
|
-
|
|
117
|
-
| 属性 | 类型 | 说明 |
|
|
118
|
-
| --- | --- | --- |
|
|
119
|
-
| appId | string | 小程序 appId |
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
**plugin 的结构**
|
|
123
|
-
|
|
124
|
-
| 属性 | 类型 | 说明 |
|
|
125
|
-
| --- | --- | --- |
|
|
126
|
-
| appId | string | 插件 appId |
|
|
127
|
-
| version | string | 插件版本号 |
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
**示例代码**
|
|
131
|
-
|
|
132
|
-
```js
|
|
133
|
-
const accountInfo = Util.getAccountInfoSync();
|
|
134
|
-
console.log(accountInfo.miniProgram.appId); // 小程序 appId
|
|
135
|
-
console.log(accountInfo.plugin.appId); // 插件 appId
|
|
136
|
-
console.log(accountInfo.plugin.version); // 插件版本号, 'a.b.c' 这样的形式
|
|
137
|
-
```
|
|
@@ -1,363 +0,0 @@
|
|
|
1
|
-
# 三方小程序登录管理器
|
|
2
|
-
|
|
3
|
-
## 说明:
|
|
4
|
-
|
|
5
|
-
三方小程序登录管理器,基于框架SSO服务,实现在三方小程序中授权获取手机号码、验证、注册、绑定、登出、注销等功能。
|
|
6
|
-
|
|
7
|
-
## 支持版本:
|
|
8
|
-
|
|
9
|
-
#### 移动前端框架:
|
|
10
|
-
|
|
11
|
-
`ejs.m8.mobileframe@8.3.9`
|
|
12
|
-
|
|
13
|
-
`@epoint-mrc/utils@1.0.8`
|
|
14
|
-
|
|
15
|
-
#### 服务端:
|
|
16
|
-
|
|
17
|
-
内部版:`F9框架版本F9.5.3`
|
|
18
|
-
|
|
19
|
-
公众版(个人/法人):`F9框架版本F9.5.3` ,支持迁移到`身份宝v1.1.0-sp1`
|
|
20
|
-
|
|
21
|
-
## 使用场景:
|
|
22
|
-
|
|
23
|
-
支持在微信小程序、支付宝小程序(计划)内使用。
|
|
24
|
-
|
|
25
|
-
支持在公司框架SSO服务公众版(个人/法人)、内部版中使用。
|
|
26
|
-
|
|
27
|
-
**平台差异**
|
|
28
|
-
|
|
29
|
-
| H5 | 新点小程序 | 微信小程序 | 支付宝小程序 |
|
|
30
|
-
| :---: | :--------: | :--------: | :----------: |
|
|
31
|
-
| X | X | √ | √(计划) |
|
|
32
|
-
|
|
33
|
-
### 注意
|
|
34
|
-
|
|
35
|
-
由于使用到了微信获取用户手机号码code,微信限制小程序注册主体需要为企业注册。
|
|
36
|
-
|
|
37
|
-
开发调试时,开发者工具需要使用该小程序微信管理后台申请的开发人员账号登录,才能在开发者工具内进行提调试。
|
|
38
|
-
|
|
39
|
-
## API:
|
|
40
|
-
|
|
41
|
-
### Util.mpVerifyManager.init(object)
|
|
42
|
-
|
|
43
|
-
初始化三方小程序登录管理器。初始化只需要初始化一次,建议放在main.js里。
|
|
44
|
-
|
|
45
|
-
__参数说明__
|
|
46
|
-
|
|
47
|
-
| 参数 |必填| 参数类型 | 可选值 | 说明 |
|
|
48
|
-
| :------------- |:-------------:|:-------------:|:-------------|:-------------|
|
|
49
|
-
| ssoUrl | 是 | String | | sso服务地址。例如:`https://domain:port/epoint-shell-member-center-demo/` |
|
|
50
|
-
| loginType | 是 | String | `mp`、`ep` | 登录类型:公众版(mp);内部版(ep) |
|
|
51
|
-
| ep3rdAppid | 是 | String | | 三方系统应用id,通过框架三方集成平台获取 | <!-- TODO补充后端文档 -->
|
|
52
|
-
| ep3rdPlatid | 是 | String | | 三方集成平台id,通过框架三方集成平台获取 |<!-- TODO补充后端文档 -->
|
|
53
|
-
| authorizeRouterPath | 否 | String | | 授权登录页面。用户openId如果sso中未绑定,会跳转到授权登录页面,授权获取手机号。支持其他个性化路由地址。默认为`/modules/innerlogin/index` |
|
|
54
|
-
| registerRouterPath | 否 | String | | 注册页路由地址。授权获取的手机号码如果未在系统中存在,会跳转到注册页面。支持其他个性化路由地址。默认为`/modules/innerlogin/page/register/register` |
|
|
55
|
-
| noMobileBindRouterPath | 否 | String | | 提示未注册手机号页面。默认为`/modules/innerlogin/page/bind/mobilebind` |
|
|
56
|
-
| legalPersonRouterPath | 否 | String | | 法人登录多身份选择路由地址。默认为`/modules/innerlogin/page/register/login_choice_identity` |
|
|
57
|
-
| registerLegalRouterPath | 否 | String | | 法人注册路由地址。默认为`/modules/innerlogin/page/register/register_legal` |
|
|
58
|
-
| useManagerToken | 否 | boolean | | Util.ajax 是否使用登录管理器获取的 token |
|
|
59
|
-
| appGuid | 否 | String | | 当使用内部版登录时,为了展示EMP平台上对应的应用程序的Client_Id的隐私授权页面,需要在隐私授权协议连接中拼接appGuid |
|
|
60
|
-
| plugins | 否 | Array | | 插件,可以进行个性化业务拦截处理 |
|
|
61
|
-
| userType | 否 | String |`P`、`L`| 用户登录类型。公众版登录时,需要传参`P`(个人)/ `L`(法人);内部版登录时可不传。默认为`P` |
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
**示例**
|
|
65
|
-
```js
|
|
66
|
-
// 初始化平台小程序用户身份管理器。初始化只需要初始化一次,建议放在main.js里。
|
|
67
|
-
Util.mpVerifyManager.init({
|
|
68
|
-
// ssoUrl: sso服务地址
|
|
69
|
-
ssoUrl: 'https://domain:port/epoint-shell-member-center-demo/',
|
|
70
|
-
// 登录类型:公众版(mp);内部版(ep)
|
|
71
|
-
loginType: 'mp',
|
|
72
|
-
// 三方系统应用id,通过框架三方集成平台获取
|
|
73
|
-
ep3rdAppid: 'applet',
|
|
74
|
-
// 三方集成平台id,通过框架三方集成平台获取
|
|
75
|
-
ep3rdPlatid: 'weixin'
|
|
76
|
-
});
|
|
77
|
-
```
|
|
78
|
-
|
|
79
|
-
### Util.mpVerifyManager.login(object)
|
|
80
|
-
|
|
81
|
-
触发小程序登录流程
|
|
82
|
-
|
|
83
|
-
__参数说明__
|
|
84
|
-
|
|
85
|
-
| 参数 |必填| 参数类型 | 可选值 | 说明 |
|
|
86
|
-
| :------------- |:-------------:|:-------------:|:-------------:|:-------------|
|
|
87
|
-
| userType | 否 | String |`P`、`L`| 用户登录类型。公众版登录时,需要传参`P`(个人)/ `L`(法人);内部版登录时可不传。默认为`P` |
|
|
88
|
-
| useCacheToken | 否 | Boolean | `true`、`false` | 是否使用缓存的token。默认为`true` |
|
|
89
|
-
|
|
90
|
-
__返回参数__
|
|
91
|
-
|
|
92
|
-
| 参数 |参数类型| 说明 |
|
|
93
|
-
| :------------- |:-------------:|:-------------|
|
|
94
|
-
| login_status | String | 登录状态码 |
|
|
95
|
-
| login_text | String | 登录状态描述 |
|
|
96
|
-
| access_token | String | 访问令牌 |
|
|
97
|
-
| refresh_token | String | 刷新令牌 |
|
|
98
|
-
| expires_in | String | 令牌有效期 |
|
|
99
|
-
| jsessionid | String | 会话id |
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
**示例**
|
|
104
|
-
```js
|
|
105
|
-
// ...
|
|
106
|
-
await Util.mpVerifyManager.login({
|
|
107
|
-
// 用户类型:P:个人、L:法人
|
|
108
|
-
userType: 'P'
|
|
109
|
-
});
|
|
110
|
-
// 登录成功之后的请求会自动携带token
|
|
111
|
-
// Util.ajax(...)
|
|
112
|
-
// ...
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
### Util.mpVerifyManager.logout()
|
|
116
|
-
|
|
117
|
-
用户登出,清空用户登录信息
|
|
118
|
-
|
|
119
|
-
**示例**
|
|
120
|
-
```js
|
|
121
|
-
Util.mpVerifyManager.logout();
|
|
122
|
-
```
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
### Util.mpVerifyManager.getUserAuth()
|
|
126
|
-
|
|
127
|
-
获取用户登录信息
|
|
128
|
-
|
|
129
|
-
__返回参数__
|
|
130
|
-
|
|
131
|
-
| 参数 |参数类型| 说明 |
|
|
132
|
-
| :------------- |:-------------:|:-------------|
|
|
133
|
-
| login_status | String | 登录状态码 |
|
|
134
|
-
| login_text | String | 登录状态描述 |
|
|
135
|
-
| access_token | String | 访问令牌 |
|
|
136
|
-
| refresh_token | String | 刷新令牌 |
|
|
137
|
-
| expires_in | String | 令牌有效期 |
|
|
138
|
-
| jsessionid | String | 会话id |
|
|
139
|
-
|
|
140
|
-
**示例**
|
|
141
|
-
```js
|
|
142
|
-
const userAuth = await Util.mpVerifyManager.getUserAuth();
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
## API页面说明
|
|
146
|
-
|
|
147
|
-
三方小程序登录管理器内置了相关页面,用于授权登录、验证、注册等。如果需要个性化页面,可以在初始化时传入个性化路由地址。
|
|
148
|
-
|
|
149
|
-
### 目录结构
|
|
150
|
-
|
|
151
|
-
默认目录结构如下
|
|
152
|
-
|
|
153
|
-
```
|
|
154
|
-
ejs.m8.mobileframe
|
|
155
|
-
|- src
|
|
156
|
-
| |- modules // 框架集成的业务组件模块
|
|
157
|
-
| | |- innerlogin // 三方小程序登录管理器内置模块
|
|
158
|
-
| | | |- pages // 具体页面
|
|
159
|
-
| | | | |- bind
|
|
160
|
-
| | | | | |- mobilebind.vue // 号码未绑定账号页面
|
|
161
|
-
| | | | |- demo
|
|
162
|
-
| | | | | |- demo.vue // 三方小程序示例页面入口
|
|
163
|
-
| | | | | |- internal.vue // 三方小程序内部版登录示例页面
|
|
164
|
-
| | | | | |- public.vue // 三方小程序公众版登录示例页面
|
|
165
|
-
| | | | |- register
|
|
166
|
-
| | | | | |- login_choice_identity.vue // 公众版法人登录多账号选择页面
|
|
167
|
-
| | | | | |- privacy_footer.vue // 通用隐私授权协议
|
|
168
|
-
| | | | | |- register_legal.vue // 公众版法人注册页面
|
|
169
|
-
| | | | | |- register.vue // 公众版个人注册页面
|
|
170
|
-
| | | | | |- webview.vue // 在线隐私协议webview展示页面
|
|
171
|
-
| | | |- plugin
|
|
172
|
-
| | | | |- plugin.js // 个性化插件示例
|
|
173
|
-
| | | |- index.vue // 登录入口,手机号码授权页面
|
|
174
|
-
|
|
175
|
-
```
|
|
176
|
-
|
|
177
|
-
## plugin插件说明
|
|
178
|
-
|
|
179
|
-
三方小程序登录管理器内置了个性化插件,用于个性化业务拦截处理。如果需要在登录流程进行拦截处理,可以在初始化时传入个性化插件。
|
|
180
|
-
|
|
181
|
-
### 钩子
|
|
182
|
-
|
|
183
|
-
以下生命周期钩子函数,是由 compiler 暴露, 可以通过如下方式访问:
|
|
184
|
-
|
|
185
|
-
```js
|
|
186
|
-
compiler.hooks.someHook.tap('MyPlugin', () => {
|
|
187
|
-
/* ... */
|
|
188
|
-
});
|
|
189
|
-
// 或者
|
|
190
|
-
compiler.hooks.someHook.tapAsync('MyPlugin', () => {
|
|
191
|
-
return new Promise((resolve) => {
|
|
192
|
-
/* ... */
|
|
193
|
-
resolve();
|
|
194
|
-
});
|
|
195
|
-
});
|
|
196
|
-
```
|
|
197
|
-
|
|
198
|
-
目前提供的均为异步钩子,可以通过 tap 或 tapAsync 来注册。
|
|
199
|
-
|
|
200
|
-
#### beforeLogin
|
|
201
|
-
|
|
202
|
-
`AsyncHook`
|
|
203
|
-
|
|
204
|
-
登录前钩子,在执行Util.mpVerifyManager.init前触发。
|
|
205
|
-
|
|
206
|
-
- 回调参数:`MpVerifyManager`
|
|
207
|
-
|
|
208
|
-
```js
|
|
209
|
-
compiler.hooks.beforeLogin.tap('MyPlugin', () => {
|
|
210
|
-
/* ... */
|
|
211
|
-
});
|
|
212
|
-
```
|
|
213
|
-
|
|
214
|
-
#### afterLogin
|
|
215
|
-
|
|
216
|
-
`AsyncHook`
|
|
217
|
-
|
|
218
|
-
登录后钩子,从SSO服务或者本地缓存中获取用户登录信息后触发。
|
|
219
|
-
|
|
220
|
-
- 回调参数:`MpVerifyManager`
|
|
221
|
-
|
|
222
|
-
```js
|
|
223
|
-
compiler.hooks.afterLogin.tap('MyPlugin', () => {
|
|
224
|
-
/* ... */
|
|
225
|
-
});
|
|
226
|
-
```
|
|
227
|
-
|
|
228
|
-
#### beforeSaveUserAuth
|
|
229
|
-
|
|
230
|
-
`AsyncHook`
|
|
231
|
-
|
|
232
|
-
保存用户登录信息之前触发
|
|
233
|
-
|
|
234
|
-
- 回调参数:`userAuth`
|
|
235
|
-
|
|
236
|
-
```js
|
|
237
|
-
compiler.hooks.beforeSaveUserAuth.tap('MyPlugin', () => {
|
|
238
|
-
/* ... */
|
|
239
|
-
});
|
|
240
|
-
```
|
|
241
|
-
|
|
242
|
-
#### beforeGetUserAuth
|
|
243
|
-
|
|
244
|
-
`AsyncHook`
|
|
245
|
-
|
|
246
|
-
获取用户登录信息之前触发
|
|
247
|
-
|
|
248
|
-
- 回调参数:`userAuth`
|
|
249
|
-
|
|
250
|
-
```js
|
|
251
|
-
compiler.hooks.beforeSaveUserAuth.tap('MyPlugin', () => {
|
|
252
|
-
/* ... */
|
|
253
|
-
});
|
|
254
|
-
```
|
|
255
|
-
|
|
256
|
-
#### afterClearUserAuth
|
|
257
|
-
|
|
258
|
-
`AsyncHook`
|
|
259
|
-
|
|
260
|
-
清除用户登录信息之后触发
|
|
261
|
-
|
|
262
|
-
- 回调参数:`userAuth`
|
|
263
|
-
|
|
264
|
-
```js
|
|
265
|
-
compiler.hooks.afterClearUserAuth.tap('MyPlugin', () => {
|
|
266
|
-
/* ... */
|
|
267
|
-
});
|
|
268
|
-
```
|
|
269
|
-
|
|
270
|
-
#### beforeLogout
|
|
271
|
-
|
|
272
|
-
`AsyncHook`
|
|
273
|
-
|
|
274
|
-
登出之前触发
|
|
275
|
-
|
|
276
|
-
- 回调参数:`MpVerifyManager`
|
|
277
|
-
|
|
278
|
-
```js
|
|
279
|
-
compiler.hooks.beforeLogout.tap('MyPlugin', () => {
|
|
280
|
-
/* ... */
|
|
281
|
-
});
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
#### afterLogout
|
|
285
|
-
|
|
286
|
-
`AsyncHook`
|
|
287
|
-
|
|
288
|
-
登出之后触发
|
|
289
|
-
|
|
290
|
-
- 回调参数:`MpVerifyManager`
|
|
291
|
-
|
|
292
|
-
```js
|
|
293
|
-
compiler.hooks.afterLogout.tap('MyPlugin', () => {
|
|
294
|
-
/* ... */
|
|
295
|
-
});
|
|
296
|
-
```
|
|
297
|
-
|
|
298
|
-
#### getMpCode
|
|
299
|
-
|
|
300
|
-
`AsyncHook`
|
|
301
|
-
|
|
302
|
-
获取三方小程序code之前触发,适用于非微信、支付宝小程序时,获取对应的code。
|
|
303
|
-
|
|
304
|
-
- 回调参数:`MpVerifyManager`
|
|
305
|
-
|
|
306
|
-
```js
|
|
307
|
-
compiler.hooks.getMpCode.tapAsync('MyPlugin', (mpVerifyManager) => {
|
|
308
|
-
return new Promise((resolve) => {
|
|
309
|
-
// 模拟api调用
|
|
310
|
-
setTimeout(function() {
|
|
311
|
-
mpVerifyManager.code = 'xxx';
|
|
312
|
-
resolve();
|
|
313
|
-
}, 3000);
|
|
314
|
-
});
|
|
315
|
-
});
|
|
316
|
-
```
|
|
317
|
-
|
|
318
|
-
### 注册使用plugin示例
|
|
319
|
-
|
|
320
|
-
```js
|
|
321
|
-
// 定义插件
|
|
322
|
-
class PluginDemo {
|
|
323
|
-
constructor() {
|
|
324
|
-
this.name = 'PluginDemo';
|
|
325
|
-
}
|
|
326
|
-
// 插件执行内容定义在apply方法中
|
|
327
|
-
apply(compiler) {
|
|
328
|
-
// 插件示例
|
|
329
|
-
compiler.hooks.beforeLogin.tap('MyPlugin', () => {
|
|
330
|
-
ejs.ui.showWaiting('请稍等');
|
|
331
|
-
});
|
|
332
|
-
// 插件示例带回调
|
|
333
|
-
compiler.hooks.afterLogin.tapAsync('MyPlugin', () => {
|
|
334
|
-
return new Promise((resolve) => {
|
|
335
|
-
ejs.ui.closeWaiting();
|
|
336
|
-
resolve();
|
|
337
|
-
});
|
|
338
|
-
});
|
|
339
|
-
}
|
|
340
|
-
}
|
|
341
|
-
|
|
342
|
-
// 初始化平台小程序用户身份管理器。初始化只需要初始化一次,建议放在main.js里。
|
|
343
|
-
Util.mpVerifyManager.init({
|
|
344
|
-
// ...其他配置
|
|
345
|
-
// 初始化时传入个性化插件
|
|
346
|
-
plugins: [new PluginDemo()],
|
|
347
|
-
});
|
|
348
|
-
```
|
|
349
|
-
|
|
350
|
-
|
|
351
|
-
### 附:小程序登录流程
|
|
352
|
-
|
|
353
|
-
#### 公众版
|
|
354
|
-
|
|
355
|
-

|
|
356
|
-
|
|
357
|
-
#### 内部版
|
|
358
|
-
|
|
359
|
-

|
|
360
|
-
|
|
361
|
-
#### 页面相关截图
|
|
362
|
-
|
|
363
|
-

|
|
@@ -1,188 +0,0 @@
|
|
|
1
|
-
# 组件库下载和使用
|
|
2
|
-
|
|
3
|
-
`@epoint-mrc/em-components` 是基于 M8 跨端框架开发的,符合新点小程序规范的跨端组件库。
|
|
4
|
-
|
|
5
|
-
**M8 移动前端跨端框架已默认集成了本组件库,开发者无须再次下载。**
|
|
6
|
-
|
|
7
|
-
**同时,跨端框架已配置好了`easycom`配置,vue 文件内无需引用、注册跨端 UI 组件,可直接在 template 中使用。**
|
|
8
|
-
|
|
9
|
-
#### 通过函数调用的组件
|
|
10
|
-
|
|
11
|
-
组件库中部分组件可以通过函数调用。
|
|
12
|
-
|
|
13
|
-
为简化引入方式,在跨端框架中,将这些组件函数注册成为全局函数,当使用函数方式调用组件时,会在编译时自动引入对应文件。
|
|
14
|
-
|
|
15
|
-
以下是跨端框架为组件库注册的全局函数:
|
|
16
|
-
|
|
17
|
-
```js
|
|
18
|
-
// 框架通过 ProvidePlugin 插件为页面注入对应文件
|
|
19
|
-
new webpack.ProvidePlugin({
|
|
20
|
-
// 键为全局函数名,值为该函数对应的文件路径
|
|
21
|
-
Toast: [require.resolve('@epoint-mrc/em-components/src/components/em-toast/index.js'), 'default'],
|
|
22
|
-
Dialog: [require.resolve('@epoint-mrc/em-components/src/components/em-dialog/index.js'), 'default'],
|
|
23
|
-
EmMap: [require.resolve('@epoint-mrc/em-components/src/components/em-map/index.js'), 'default'],
|
|
24
|
-
Notify: [require.resolve('@epoint-mrc/em-components/src/components/em-notify/index.js'), 'default'],
|
|
25
|
-
ImagePreview: [require.resolve('@epoint-mrc/em-components/src/components/em-image-preview/index.js'), 'default'],
|
|
26
|
-
SelectPerson: [require.resolve('@epoint-mrc/em-components/src/components/em-select-person/index.js'), 'default'],
|
|
27
|
-
Locale: [require.resolve('@epoint-mrc/em-components/src/components/locale/index.js'), 'default'],
|
|
28
|
-
// 方便ejs调用的专属组件
|
|
29
|
-
EjsApi: [require.resolve('@epoint-mrc/em-components/src/components/ejs-api/index.js'), 'default'],
|
|
30
|
-
}),
|
|
31
|
-
```
|
|
32
|
-
|
|
33
|
-
## 组件的公共属性
|
|
34
|
-
|
|
35
|
-
每个组件都有以下两个公共属性,方便开发者简单修改组件样式。
|
|
36
|
-
|
|
37
|
-
| 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
|
|
38
|
-
| :----------- | :----------------: | :----- | :----- | :----------------------------------- |
|
|
39
|
-
| custom-class | 自定义组件额外类名 | string | - | 否 |
|
|
40
|
-
| custom-style | 自定义组件额外样式 | string | - | 是(有可能不会生效,优先级规则不同) |
|
|
41
|
-
|
|
42
|
-
**注意**
|
|
43
|
-
|
|
44
|
-
1. 直接在组件上设置`class`来修改样式,在小程序中可能不会生效,所以建议通过以上两个属性修改组件样式。
|
|
45
|
-
|
|
46
|
-
2. 以上属性旨在为开发者需要简单修改样式的场景下提供便利,例如设置组件间的间距等。
|
|
47
|
-
|
|
48
|
-
3. 若有更复杂的样式修改,或者需要修改组件内部节点的样式,以上属性无法满足,建议直接通过样式穿透修改内部节点样式。
|
|
49
|
-
|
|
50
|
-
4. 小程序有一套自己的样式隔离策略,这与`vue`的`scoped`属性不同,若开启了小程序的样式隔离,通过`::v-deep`也无法作用在子组件内部。
|
|
51
|
-
支付宝小程序的样式隔离是默认关闭的,所以可以在外部对子组件内部节点类名进行修改。而微信小程序一般情况下自定义组件的样式隔离是默认开启的,所以若要修改组件库中的组件的样式,可以有两种方式:
|
|
52
|
-
|
|
53
|
-
(1)跨端组件库通过微信小程序的外部样式类实现 `custom-class` 功能,简单场景下,可以通过`custom-class` 修改组件最外层的样式。
|
|
54
|
-
|
|
55
|
-
(2)若要修改组件内部节点样式,请添加样式隔离选项关闭微信小程序默认的样式隔离:
|
|
56
|
-
|
|
57
|
-
```js
|
|
58
|
-
export default {
|
|
59
|
-
options: {
|
|
60
|
-
styleIsolation: 'shared'
|
|
61
|
-
}
|
|
62
|
-
};
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
然后就可以直接对子组件的类名选择器进行修改。关于微信小程序的样式隔离请看:[组件样式隔离](https://developers.weixin.qq.com/miniprogram/dev/framework/custom-component/wxml-wxss.html#%E7%BB%84%E4%BB%B6%E6%A0%B7%E5%BC%8F%E9%9A%94%E7%A6%BB)。
|
|
66
|
-
|
|
67
|
-
部分框架组件由于内部设置了`styleIsolation: 'shared'`,导致在微信小程序端无法正常使用 `custom-class`,这种情况下请使用 `custom-style` 或者参考以上第四点使用样式穿透直接修改组件内部样式类。
|
|
68
|
-
微信小程序端无法正常使用 `custom-class`的组件有:`em-field`、`em-search`、`em-date-picker`、`em-steps`。
|
|
69
|
-
|
|
70
|
-
5. 注意,使用子组件的插槽时,插槽内的自定义节点样式选择器请不要嵌套在子组件内部节点样式类选择器中,这样写的样式在微信小程序中不会生效。
|
|
71
|
-
|
|
72
|
-
```html
|
|
73
|
-
<em-panel title="标题" desc="描述信息" status="状态">
|
|
74
|
-
<view class="text">容器</view>
|
|
75
|
-
</em-panel>
|
|
76
|
-
```
|
|
77
|
-
|
|
78
|
-
```scss
|
|
79
|
-
::v-deep .em-panel {
|
|
80
|
-
.text {
|
|
81
|
-
color: red; // 这个不会生效
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
.text {
|
|
86
|
-
color: yellow; // 这个正常生效
|
|
87
|
-
}
|
|
88
|
-
```
|
|
89
|
-
|
|
90
|
-
::: ifdef M84
|
|
91
|
-
|
|
92
|
-
## M8.4 调整
|
|
93
|
-
|
|
94
|
-
M8.4 框架改为使用 Vue3,跨端组件库在 M8.3 基础上要相应做出一些调整:
|
|
95
|
-
|
|
96
|
-
**1. v-model 双向绑定**
|
|
97
|
-
|
|
98
|
-
所有组件双向绑定的默认 prop 由`value`改为`modelValue`,默认触发事件由`input`改为`update:modelValue`;
|
|
99
|
-
|
|
100
|
-
**2. 作用域插槽注意**
|
|
101
|
-
|
|
102
|
-
测试发现当前版本的 uniapp 框架存在以下 bug:
|
|
103
|
-
|
|
104
|
-
支付宝小程序端,默认插槽如果是一个作用域插槽,且设置了后备内容,在父组件访问子组件的数据时,该默认插槽不会正常渲染。
|
|
105
|
-
|
|
106
|
-
例如以下情况,父组件中的子组件将不会显示默认插槽中自定义的内容:
|
|
107
|
-
|
|
108
|
-
子组件`child-component`:
|
|
109
|
-
|
|
110
|
-
```html
|
|
111
|
-
<template>
|
|
112
|
-
<view class="content">
|
|
113
|
-
<slot :msg="msg">后备内容</slot>
|
|
114
|
-
</view>
|
|
115
|
-
</template>
|
|
116
|
-
|
|
117
|
-
<script setup lang="ts">
|
|
118
|
-
const msg = '你好';
|
|
119
|
-
</script>
|
|
120
|
-
```
|
|
121
|
-
|
|
122
|
-
父组件:
|
|
123
|
-
|
|
124
|
-
```html
|
|
125
|
-
<template>
|
|
126
|
-
<view class="content">
|
|
127
|
-
<child-component>
|
|
128
|
-
<template #default="{ msg }">{{ msg }}</template>
|
|
129
|
-
</child-component>
|
|
130
|
-
</view>
|
|
131
|
-
</template>
|
|
132
|
-
```
|
|
133
|
-
|
|
134
|
-
解决方案:可以换一种方式,通过判断是否存在 `$slots.default` 来设置后备内容。
|
|
135
|
-
|
|
136
|
-
即: 将以上子组件`child-component`改为下面的代码:
|
|
137
|
-
|
|
138
|
-
```html
|
|
139
|
-
<template>
|
|
140
|
-
<view class="content">
|
|
141
|
-
<view v-if="!$slots.default">后备内容</view>
|
|
142
|
-
<template v-else>
|
|
143
|
-
<slot :msg="msg"></slot>
|
|
144
|
-
</template>
|
|
145
|
-
</view>
|
|
146
|
-
</template>
|
|
147
|
-
|
|
148
|
-
<script setup lang="ts">
|
|
149
|
-
const msg = '你好';
|
|
150
|
-
</script>
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
**3. 组合式 API 注意**
|
|
154
|
-
|
|
155
|
-
为了适配组合式 API,全局组件新增默认的`ref`值`emXXXRef`。
|
|
156
|
-
|
|
157
|
-
如果项目使用组合式 API 编写代码,使用如`Toast`这样的全局组件时,在支付宝小程序端,原本的默认`ref`值`emToast`会与引入 setup 中的组件名冲突,所以新增一个`ref`值`emToastRef`来进行兼容。
|
|
158
|
-
|
|
159
|
-
同时,为了让全局方法可以拿到页面中的组件节点,需要使用 `defineExpose` 将`ref`变量暴露出来。
|
|
160
|
-
|
|
161
|
-
示例:
|
|
162
|
-
|
|
163
|
-
```html
|
|
164
|
-
<template>
|
|
165
|
-
<view class="content">
|
|
166
|
-
<em-button @click="onClick">点击提示</em-button>
|
|
167
|
-
<em-toast ref="emToastRef"></em-toast>
|
|
168
|
-
</view>
|
|
169
|
-
</template>
|
|
170
|
-
|
|
171
|
-
<script setup lang="ts">
|
|
172
|
-
import { ref } from 'vue';
|
|
173
|
-
|
|
174
|
-
const emToastRef = ref();
|
|
175
|
-
|
|
176
|
-
const onClick = () => {
|
|
177
|
-
Toast('测试');
|
|
178
|
-
};
|
|
179
|
-
|
|
180
|
-
defineExpose({
|
|
181
|
-
emToastRef
|
|
182
|
-
});
|
|
183
|
-
</script>
|
|
184
|
-
```
|
|
185
|
-
|
|
186
|
-
M8.4 框架中,建议全局组件的`ref`值都改为`emXXXRef`,与组件名进行区分。
|
|
187
|
-
|
|
188
|
-
::: endif
|