m8-mcp-server 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +67 -0
- package/bin/m8-mcp.js +2 -0
- package/dist/constants.js +1 -0
- package/dist/data/ejs-doc/api_audio/api_audio.md +225 -0
- package/dist/data/ejs-doc/api_auth/api_auth.md +256 -0
- package/dist/data/ejs-doc/api_contact/api_contact.md +295 -0
- package/dist/data/ejs-doc/api_contact/images/component_contact.jpg +0 -0
- package/dist/data/ejs-doc/api_device/api_device.md +761 -0
- package/dist/data/ejs-doc/api_event/api_event.md +244 -0
- package/dist/data/ejs-doc/api_global/api_global.md +440 -0
- package/dist/data/ejs-doc/api_io/api_io.md +369 -0
- package/dist/data/ejs-doc/api_navigator/api_navigator.md +654 -0
- 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 +261 -0
- package/dist/data/ejs-doc/api_runtime/api_runtime.md +788 -0
- package/dist/data/ejs-doc/api_storage/api_storage.md +320 -0
- package/dist/data/ejs-doc/api_stream/api_stream.md +152 -0
- package/dist/data/ejs-doc/api_stream/images/body_multiform.jpg +0 -0
- package/dist/data/ejs-doc/api_ui/api_ui.md +836 -0
- 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 +615 -0
- 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 +247 -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/205vue3.md +276 -0
- package/dist/data/m8mpdoc-develop/003-/345/205/270/345/236/213/346/241/210/344/276/213/003-/350/241/250/345/215/225/346/217/220/344/272/244.md +130 -0
- package/dist/data/m8mpdoc-develop/003-/345/205/270/345/236/213/346/241/210/344/276/213/003-/350/241/250/345/215/225/346/217/220/344/272/244vue3.md +115 -0
- package/dist/data/m8mpdoc-develop/005-/346/240/270/345/277/203/351/200/232/347/224/250Util/000-/346/240/270/345/277/203/346/226/271/346/263/225.md +398 -0
- package/dist/data/m8mpdoc-develop/005-/346/240/270/345/277/203/351/200/232/347/224/250Util/001-Ajax/344/270/216/346/226/207/344/273/266/344/270/212/344/274/240.md +456 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/000-charset.md +128 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/001-base64.md +142 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/002-date.md +210 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/004-math.md +85 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/006-sha1.md +21 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/007-sha256.md +36 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/008-storage.md +128 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/009-string.md +148 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/010-Util/346/211/251/345/261/225/346/214/207/345/215/227.md +76 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/011-cookie.md +59 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/012-util-sm.md +95 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-1.baseapi.md +76 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.network.md +202 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-2.socketTask.md +92 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-3.uiapi.md +412 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-4.eventapi.md +146 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/013-5.otherapi.md +137 -0
- package/dist/data/m8mpdoc-develop/006-Util/345/267/245/345/205/267/351/233/206/014-util-mpVerifyManager.md +363 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/000-/347/273/204/344/273/266/345/272/223/344/270/213/350/275/275/344/275/277/347/224/250.md +188 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/001-actionsheet/345/212/250/344/275/234/351/235/242/346/235/277.md +460 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/004-amap/345/234/260/345/233/276.md +285 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/005-button/346/214/211/351/222/256.md +211 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/008-cell/345/215/225/345/205/203/346/240/274.md +213 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/009-checkbox/345/244/215/351/200/211/346/241/206.md +501 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/010-circle/347/216/257/345/275/242/350/277/233/345/272/246/346/235/241.md +168 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/011-datepicker/346/227/245/346/234/237/351/200/211/346/213/251.md +617 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/013-field/350/276/223/345/205/245/346/241/206.md +539 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/015-form/350/241/250/345/215/225.md +999 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/018-header/345/244/264/351/203/250/345/257/274/350/210/252/346/240/217.md +150 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/019-icon/345/233/276/346/240/207.md +133 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/020-loading/345/212/240/350/275/275.md +117 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/021-noticebar/351/200/232/347/237/245/346/240/217.md +152 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/022-numberkeyboard/346/225/260/345/255/227/351/224/256/347/233/230.md +427 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/023-pagination/345/210/206/351/241/265.md +212 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/024-panel/351/235/242/346/235/277.md +85 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/025-passwordinput/345/257/206/347/240/201/350/276/223/345/205/245/346/241/206.md +175 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/026-picker/351/200/211/346/213/251/345/231/250.md +519 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/027-popup/345/274/271/345/207/272/345/261/202.md +152 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/028-progress/350/277/233/345/272/246/346/235/241.md +103 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/029-radio/345/215/225/351/200/211/346/241/206.md +285 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/030-rate/350/257/204/345/210/206.md +189 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/031-search/346/220/234/347/264/242.md +217 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/032-slider/346/273/221/345/235/227.md +166 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/033-stepper/346/255/245/350/277/233/345/231/250.md +340 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/035-swipecell/346/273/221/345/212/250/345/215/225/345/205/203/346/240/274.md +265 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/036-switch/345/274/200/345/205/263.md +196 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/037-switchcell/345/274/200/345/205/263/345/215/225/345/205/203/346/240/274.md +115 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/038-tag/346/240/207/350/256/260.md +232 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/039-treeselect/345/210/206/347/261/273/351/200/211/346/213/251.md +631 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/040-uploader/346/226/207/344/273/266/344/270/212/344/274/240.md +531 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/041-verifycode/351/252/214/350/257/201/347/240/201.md +111 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/042-minirefresh/344/270/213/346/213/211/345/210/267/346/226/260.md +337 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/043-layout/345/270/203/345/261/200.md +150 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/044-image/345/233/276/347/211/207.md +144 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/045-toast/350/275/273/346/217/220/347/244/272.md +429 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/046-calendar/346/227/245/345/216/206.md +467 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/047-area/347/234/201/345/270/202/345/214/272/351/200/211/346/213/251.md +295 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/048-tab/346/240/207/347/255/276/351/241/265.md +577 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/049-dialog/345/274/271/345/207/272/346/241/206.md +491 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/050-dropdownmenu/344/270/213/346/213/211/350/217/234/345/215/225.md +265 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/051-notify/346/266/210/346/201/257/351/200/232/347/237/245.md +203 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/052-overlay/351/201/256/347/275/251/345/261/202.md +139 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/053-collapse/346/212/230/345/217/240/351/235/242/346/235/277.md +199 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/054-grid/345/256/253/346/240/274.md +183 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/055-countdown/345/200/222/350/256/241/346/227/266.md +289 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/056-divider/345/210/206/345/211/262/347/272/277.md +97 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/057-empty/347/251/272/347/212/266/346/200/201.md +146 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/058-imagepreview/345/233/276/347/211/207/351/242/204/350/247/210.md +292 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/059-lazyload/346/207/222/345/212/240/350/275/275.md +120 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/060-skeleton/351/252/250/346/236/266/345/261/217.md +114 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/061-steps/346/255/245/351/252/244/346/235/241.md +119 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/062-sticky/347/262/230/346/200/247/345/270/203/345/261/200.md +208 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/063-indexbar/347/264/242/345/274/225/346/240/217.md +161 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/064-sidebar/344/276/247/350/276/271/345/257/274/350/210/252.md +248 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/065-tabbar/346/240/207/347/255/276/346/240/217.md +314 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/066-badge/345/276/275/346/240/207.md +162 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/067-popover/346/260/224/346/263/241/345/274/271/345/207/272/346/241/206.md +325 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/068-cascader/347/272/247/350/201/224/351/200/211/346/213/251.md +360 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/069-selectperson/351/200/211/344/272/272/347/273/204/344/273/266.md +595 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/070-swipe/350/275/256/346/222/255.md +262 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/071-/345/233/275/351/231/205/345/214/226.md +51 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/072-easycalendar/346/227/245/345/216/206.md +132 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/073-qrcode/344/272/214/347/273/264/347/240/201.md +1538 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/074-imagescale/345/233/276/347/211/207/350/243/201/345/211/252.md +261 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/075-dragsort/346/213/226/346/213/275/346/216/222/345/272/217.md +161 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/076-chart/345/233/276/350/241/250.md +381 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/077-rtc/351/237/263/350/247/206/351/242/221.md +531 -0
- package/dist/data/m8mpdoc-develop/009-UI/347/273/204/344/273/266/078-table/350/241/250/346/240/274.md +849 -0
- package/dist/data/m8mpdoc-develop/012-Mock/347/232/204/344/275/277/347/224/250/Mock/347/232/204/344/275/277/347/224/250.md +116 -0
- package/dist/data/standards/css-style.md +531 -0
- package/dist/data/standards/js-style.md +394 -0
- package/dist/data/standards/project-structure.md +325 -0
- package/dist/data/standards/vue-style.md +644 -0
- package/dist/index.js +1 -0
- package/dist/tools/search.js +1 -0
- package/dist/tools/standards.js +1 -0
- package/package.json +43 -0
|
@@ -0,0 +1,337 @@
|
|
|
1
|
+
# 组件使用
|
|
2
|
+
|
|
3
|
+
## minirefresh 下拉刷新
|
|
4
|
+
|
|
5
|
+
### 介绍
|
|
6
|
+
|
|
7
|
+
- M8 下拉刷新组件
|
|
8
|
+
|
|
9
|
+
### 代码演示
|
|
10
|
+
|
|
11
|
+
#### 基础演示
|
|
12
|
+
|
|
13
|
+
::: ifdef M83
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<em-minirefresh ref="scrollPull" :page-size="pageSize" :url="url" :request-data="dataRequest" :change-data="dataChange">
|
|
17
|
+
<!-- 定义列表模板内容 -->
|
|
18
|
+
<template v-slot:default="{ listData }">
|
|
19
|
+
<!--listData为经过dataChange处理的返回参数 -->
|
|
20
|
+
<em-cell v-for="(item, index) in listData" :key="index" :title="item.title" @click="itemClick(item)" />
|
|
21
|
+
</template>
|
|
22
|
+
</em-minirefresh>
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
```js
|
|
26
|
+
export default {
|
|
27
|
+
data() {
|
|
28
|
+
return {
|
|
29
|
+
// 请求的url
|
|
30
|
+
url: `${Config.serverUrl}/rest/list`,
|
|
31
|
+
// 接口请求的初始页面
|
|
32
|
+
initPageIndex: 0,
|
|
33
|
+
// 每次请求的分页大小
|
|
34
|
+
pageSize: 15
|
|
35
|
+
};
|
|
36
|
+
},
|
|
37
|
+
methods: {
|
|
38
|
+
// 请求参数函数
|
|
39
|
+
dataRequest(currPage, pageSize) {
|
|
40
|
+
const data = {
|
|
41
|
+
// keyword: this.keyWord,
|
|
42
|
+
// 当前搜索的第几页,数字类型
|
|
43
|
+
currentpageindex: currPage,
|
|
44
|
+
// 每页显示记录条数,数字类型
|
|
45
|
+
pagesize: pageSize
|
|
46
|
+
};
|
|
47
|
+
const requestData = {
|
|
48
|
+
params: JSON.stringify(data)
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
return requestData;
|
|
52
|
+
},
|
|
53
|
+
// 修改数据返回参数, res为接口返回参数,requestData为请求入参(组件库v1.0.6版本开始支持)
|
|
54
|
+
dataChange(res, requestData) {
|
|
55
|
+
let data;
|
|
56
|
+
|
|
57
|
+
if (res.status.code === 1) {
|
|
58
|
+
data = res.custom.infolist;
|
|
59
|
+
} else {
|
|
60
|
+
console.error('接口返回参数错误');
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
return data;
|
|
64
|
+
},
|
|
65
|
+
// 列表模板绑定的点击事件函数
|
|
66
|
+
itemClick(item) {
|
|
67
|
+
console.log(item);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
::: endif
|
|
74
|
+
::: ifdef M84
|
|
75
|
+
|
|
76
|
+
```html
|
|
77
|
+
<em-minirefresh ref="scrollPull" :page-size="pageSize" :url="url" :request-data="dataRequest" :change-data="dataChange">
|
|
78
|
+
<template #default="{ listData }">
|
|
79
|
+
<em-cell v-for="(item, index) in listData" :key="index" :title="item.title" @click="itemClick(item)" />
|
|
80
|
+
</template>
|
|
81
|
+
</em-minirefresh>
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
```js
|
|
85
|
+
import { ref } from 'vue';
|
|
86
|
+
// 请求的url
|
|
87
|
+
const url = `${Config.serverUrl}/rest/list`;
|
|
88
|
+
// 接口请求的初始页面
|
|
89
|
+
const initPageIndex = ref(0);
|
|
90
|
+
// 每次请求的分页大小
|
|
91
|
+
const pageSize = ref(15);
|
|
92
|
+
|
|
93
|
+
// 请求参数函数
|
|
94
|
+
const dataRequest = (currPage, pageSize) => {
|
|
95
|
+
const data = {
|
|
96
|
+
// keyword: this.keyWord,
|
|
97
|
+
// 当前搜索的第几页,数字类型
|
|
98
|
+
currentpageindex: currPage,
|
|
99
|
+
// 每页显示记录条数,数字类型
|
|
100
|
+
pagesize: pageSize
|
|
101
|
+
};
|
|
102
|
+
const requestData = {
|
|
103
|
+
params: JSON.stringify(data)
|
|
104
|
+
};
|
|
105
|
+
|
|
106
|
+
return requestData;
|
|
107
|
+
};
|
|
108
|
+
|
|
109
|
+
// 修改数据返回参数, res为接口返回参数,requestData为请求入参(组件库v1.0.6版本开始支持)
|
|
110
|
+
const dataChange = (res, requestData) => {
|
|
111
|
+
let data;
|
|
112
|
+
|
|
113
|
+
if (res.status.code === 1) {
|
|
114
|
+
data = res.custom.infolist;
|
|
115
|
+
} else {
|
|
116
|
+
console.error('接口返回参数错误');
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
return data;
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
// 列表模板绑定的点击事件函数
|
|
123
|
+
const itemClick = (item) => {
|
|
124
|
+
console.log(item);
|
|
125
|
+
};
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
::: endif
|
|
129
|
+
|
|
130
|
+
#### 自定义请求数据源
|
|
131
|
+
|
|
132
|
+
`useCustomRequest` 参数为`true`时,开发者可自定义获取数据源,下拉刷新组件通过`request`事件触发数据源获取。
|
|
133
|
+
|
|
134
|
+
`page-size`必须设置,因为该参数影响组件加载结束判定,不设置时该参数默认为`10`。
|
|
135
|
+
|
|
136
|
+
::: ifdef M83
|
|
137
|
+
|
|
138
|
+
```html
|
|
139
|
+
<em-minirefresh :page-size="pageSize" useCustomRequest @request="request">
|
|
140
|
+
<template v-slot:default="{ listData }">
|
|
141
|
+
<em-cell v-for="(item, index) in listData" :key="index" :title="item.title" @click="itemClick(item)" />
|
|
142
|
+
</template>
|
|
143
|
+
</em-minirefresh>
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
```js
|
|
147
|
+
export default {
|
|
148
|
+
data() {
|
|
149
|
+
return {
|
|
150
|
+
// 每次请求的分页大小
|
|
151
|
+
pageSize: 15
|
|
152
|
+
};
|
|
153
|
+
},
|
|
154
|
+
methods: {
|
|
155
|
+
// 自定义请求数据方法,options包含currPageIndex,currPageSize等参数
|
|
156
|
+
// 数据通过 successcb 方法再回调给下拉刷新组件
|
|
157
|
+
request(options, successcb, errorcb) {
|
|
158
|
+
setTimeout(() => {
|
|
159
|
+
let res = [
|
|
160
|
+
{
|
|
161
|
+
title: '选择标题样式,在这里更改标题的排列方式'
|
|
162
|
+
},
|
|
163
|
+
{
|
|
164
|
+
title: '选择标题'
|
|
165
|
+
}
|
|
166
|
+
];
|
|
167
|
+
|
|
168
|
+
successcb(res);
|
|
169
|
+
}, 1000);
|
|
170
|
+
},
|
|
171
|
+
// 列表模板绑定的点击事件函数
|
|
172
|
+
itemClick(item) {
|
|
173
|
+
console.log(item);
|
|
174
|
+
}
|
|
175
|
+
}
|
|
176
|
+
};
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
::: endif
|
|
180
|
+
::: ifdef M84
|
|
181
|
+
|
|
182
|
+
```html
|
|
183
|
+
<em-minirefresh :page-size="pageSize" useCustomRequest @request="request">
|
|
184
|
+
<template v-slot:default="{ listData }">
|
|
185
|
+
<em-cell v-for="(item, index) in listData" :key="index" :title="item.title" @click="itemClick(item)" />
|
|
186
|
+
</template>
|
|
187
|
+
</em-minirefresh>
|
|
188
|
+
```
|
|
189
|
+
|
|
190
|
+
```js
|
|
191
|
+
import { ref } from 'vue';
|
|
192
|
+
// 每次请求的分页大小
|
|
193
|
+
const pageSize = ref(15);
|
|
194
|
+
|
|
195
|
+
// 自定义请求数据方法,options包含currPageIndex,currPageSize等参数
|
|
196
|
+
// 数据通过 successcb 方法再回调给下拉刷新组件
|
|
197
|
+
const request = (options, successcb, errorcb) => {
|
|
198
|
+
setTimeout(() => {
|
|
199
|
+
let res = [
|
|
200
|
+
{
|
|
201
|
+
title: '选择标题样式,在这里更改标题的排列方式'
|
|
202
|
+
},
|
|
203
|
+
{
|
|
204
|
+
title: '选择标题'
|
|
205
|
+
}
|
|
206
|
+
];
|
|
207
|
+
|
|
208
|
+
successcb(res);
|
|
209
|
+
}, 1000);
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
// 列表模板绑定的点击事件函数
|
|
213
|
+
const itemClick = (item) => {
|
|
214
|
+
console.log(item);
|
|
215
|
+
};
|
|
216
|
+
```
|
|
217
|
+
|
|
218
|
+
::: endif
|
|
219
|
+
|
|
220
|
+
### API
|
|
221
|
+
|
|
222
|
+
#### Props
|
|
223
|
+
|
|
224
|
+
| 参数 | 说明 | 类型 | 默认值 |
|
|
225
|
+
| :-------------------------------------------- | :--------------------------------------------------------------------------------------------------: | :------------ | :---------------------------------- |
|
|
226
|
+
| url | 请求的 url | string | - |
|
|
227
|
+
| type | 请求类型 | string | `POST` |
|
|
228
|
+
| initPageIndex | 接口请求的初始页面,根据不同项目服务器配置而不同 | number | 0 |
|
|
229
|
+
| page-size | 每次请求的分页大小 | number | 10 |
|
|
230
|
+
| <span style="color: red;">request-data</span> | 请求的数据,为函数时请将数据返回出去(为了兼容小程序端,命名方式与原本不同) | object | - |
|
|
231
|
+
| <span style="color: red;">change-data</span> | 请求返回参数,请将列表数组数据返回出去(为了兼容小程序端,命名方式与原本不同) | object | - |
|
|
232
|
+
| timeout | 每次请求的最大超时时间 | number | `6000` |
|
|
233
|
+
| delay | 延迟请求的时间,单位为毫秒 | number | `0` |
|
|
234
|
+
| contentType | 下拉刷新请求的 contentType | string | `application/x-www-form-urlencoded` |
|
|
235
|
+
| headers | 自定义请求头内容 | object | |
|
|
236
|
+
| isAutoProxy | 是否使用 token 自动代理 | boolean | true |
|
|
237
|
+
| downPullingText | 下拉过程提示文案 | string | `下拉即可刷新...` |
|
|
238
|
+
| downLoosingText | 下拉释放过程提示文案 | string | `释放即可刷新...` |
|
|
239
|
+
| downLoadingText | 加载过程提示文案 | string | `加载中...` |
|
|
240
|
+
| downSuccessText | 刷新成功提示文案 | string | `刷新成功` |
|
|
241
|
+
| downErrorText | 刷新失败提示文案 | string | `刷新失败` |
|
|
242
|
+
| downSuccessDuration | 刷新成功提示展示时长(ms) | string/number | `500` |
|
|
243
|
+
| downAnimationDuration | 动画时长(ms) | string/number | `300` |
|
|
244
|
+
| downHeadHeight | 顶部内容高度 | string/number | `50` |
|
|
245
|
+
| downDisabled | 是否禁用下拉刷新 | boolean | `false` |
|
|
246
|
+
| downImmediatePull | 是否在初始化时立即执行下拉刷新 | boolean | `true` |
|
|
247
|
+
| upOffset | 滚动条与底部距离小于 offset 时触发 load 事件 | string/number | `300` |
|
|
248
|
+
| upLoadingText | 上拉加载过程中的提示文案 | string | `加载中...` |
|
|
249
|
+
| upFnishedText | 上拉加载完成后的提示文案 | string | `没有更多了` |
|
|
250
|
+
| upErrorText | 加载失败的提示文案 | string | - |
|
|
251
|
+
| upImmediateCheck | 是否在初始化时立即执行滚动位置检查 | boolean | `false` |
|
|
252
|
+
| upDirection | 滚动触发加载的方向,可选值为 up | boolean | `down` |
|
|
253
|
+
| ulMinHeight | 下拉刷新容器最小高度 | string | `-` |
|
|
254
|
+
| keeppos | 是否需要保持刷新前的滚动位置,需要刷新组件最外层设置固定高度并且内容可滚动 | boolean | `false` |
|
|
255
|
+
| description | 列表为空时, 默认缺省图文字描述 | string | `暂无数据` |
|
|
256
|
+
| image | 列表为空时, 默认缺省图图标, 可选值为 `error` `network` `search`,支持传入图片 `URL` | string | `default` |
|
|
257
|
+
| top | 顶部偏移量 | string/number | `0` |
|
|
258
|
+
| bottom | 底部偏移量 | string/number | `0` |
|
|
259
|
+
| otherOptions | ajax 其他自定义配置项 | object | `-` |
|
|
260
|
+
| useCustomRequest `v8.3.7-beta.0` | 是否自定义请求数据方法 | boolean | `false` |
|
|
261
|
+
| noMoreSize `v8.3.19-beta.0` | 如果列表已加载不出更多数据,底部是否展示无更多数据提示取决于,列表的总数量是否大于等于`noMoreSize`条 | number/string | `5` |
|
|
262
|
+
|
|
263
|
+
#### 事件
|
|
264
|
+
|
|
265
|
+
| 事件名 | 说明 | 回调参数 |
|
|
266
|
+
| :--------------------------------------------- | :----------------------------------------------: | :--------------------------------------------------------------- |
|
|
267
|
+
| request `v8.3.7-beta.0` | 刷新时触发,仅在`useCustomRequest`为`true`时生效 | options: 请求相关的参数,successcb: 成功回调, errorcb: 失败回调 |
|
|
268
|
+
| ::: ifdef M84 update:listData `v8.4` ::: endif | 用于同步 listData 事件 | listData: 数据列表 |
|
|
269
|
+
| ::: ifdef M84 update:distance `v8.4` ::: endif | 用于同步 distance 事件 | distance: 距离 |
|
|
270
|
+
|
|
271
|
+
#### 方法
|
|
272
|
+
|
|
273
|
+
通过 ref 可以获取到 minirefresh 实例并调用实例方法,详见组件实例方法
|
|
274
|
+
|
|
275
|
+
| 名称 | 说明 | 参数 | 返回值 |
|
|
276
|
+
| :------ | :------------------: | :----------------------------------------------- | :----- |
|
|
277
|
+
| refresh | 手动触发下拉刷新功能 | { animationType: 传值`noAnimation`代表无感刷新 } | - |
|
|
278
|
+
| check | 手动触发上拉加载功能 | - | - |
|
|
279
|
+
|
|
280
|
+
#### Slots
|
|
281
|
+
|
|
282
|
+
插槽,用于个性化实现内容
|
|
283
|
+
|
|
284
|
+
| 名称 | 说明 | SlotProps |
|
|
285
|
+
| :---------- | :----------------------: | :------------------------: |
|
|
286
|
+
| default | 自定义列表模板内容 | { listData: 列表数据 } |
|
|
287
|
+
| down-Normal | 非下拉状态时顶部内容 | - |
|
|
288
|
+
| downPulling | 下拉过程中顶部内容 | { distance: 当前下拉距离 } |
|
|
289
|
+
| downLoosing | 下拉释放过程中顶部内容 | { distance: 当前下拉距离 } |
|
|
290
|
+
| downLoading | 下拉加载过程中顶部内容 | { distance: 当前下拉距离 } |
|
|
291
|
+
| downSuccess | 下拉刷新成功顶部提示内容 | - |
|
|
292
|
+
| upHeader | 自定义底部加载中内容 | - |
|
|
293
|
+
| upFinished | 自定义加载完成后的提示 | - |
|
|
294
|
+
| upError | 自定义加载失败后的提示 | - |
|
|
295
|
+
| empty | 空列表内容提示 | - |
|
|
296
|
+
|
|
297
|
+
::: ifdef M83
|
|
298
|
+
|
|
299
|
+
<iframe
|
|
300
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-minirefresh"
|
|
301
|
+
frameborder=0
|
|
302
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
303
|
+
</iframe>
|
|
304
|
+
::: endif
|
|
305
|
+
::: ifdef M84
|
|
306
|
+
<iframe
|
|
307
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-minirefresh"
|
|
308
|
+
frameborder=0
|
|
309
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
310
|
+
</iframe>
|
|
311
|
+
::: endif
|
|
312
|
+
|
|
313
|
+
<style>
|
|
314
|
+
.ui-showcase-iframe {
|
|
315
|
+
position: fixed;
|
|
316
|
+
right: 3.5vw;
|
|
317
|
+
top: 17%;
|
|
318
|
+
width: 375px;
|
|
319
|
+
height: 75vh;
|
|
320
|
+
box-shadow: 0 0 12px 6px #eee;
|
|
321
|
+
border-radius: 15px;
|
|
322
|
+
}
|
|
323
|
+
.main .markdown-body {
|
|
324
|
+
padding: 45px;
|
|
325
|
+
width: calc(97vw - 661px);
|
|
326
|
+
}
|
|
327
|
+
</style>
|
|
328
|
+
|
|
329
|
+
### 常见问题
|
|
330
|
+
|
|
331
|
+
为什么下拉刷新加载后会立即触发刷新事件?
|
|
332
|
+
|
|
333
|
+
> 下拉刷新初始化后会自动触发一次刷新事件,用于加载第一屏的数据,这个特性可以通过 upImmediateCheck 属性或 downImmediatePull 关闭。
|
|
334
|
+
|
|
335
|
+
如何手动实现第一次的下拉刷新请求?
|
|
336
|
+
|
|
337
|
+

|
|
@@ -0,0 +1,150 @@
|
|
|
1
|
+
# 组件使用
|
|
2
|
+
|
|
3
|
+
## layout 布局
|
|
4
|
+
|
|
5
|
+
### 介绍
|
|
6
|
+
|
|
7
|
+
- `Layout` 提供了`em-row`和`em-col`两个组件来进行行列布局。
|
|
8
|
+
|
|
9
|
+
::: ifdef M83
|
|
10
|
+
|
|
11
|
+
- `v8.3.11`开始支持 weex 端使用
|
|
12
|
+
|
|
13
|
+
::: endif
|
|
14
|
+
|
|
15
|
+
### 代码演示
|
|
16
|
+
|
|
17
|
+
#### 基础用法
|
|
18
|
+
|
|
19
|
+
`Layout` 组件提供了 24 列栅格,通过在`Col`上添加`span`属性设置列所占的宽度百分比。此外,添加`offset`属性可以设置列的偏移宽度,计算方式与 `span` 相同。
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<em-row>
|
|
23
|
+
<em-col span="8">span: 8</em-col>
|
|
24
|
+
<em-col span="8">span: 8</em-col>
|
|
25
|
+
<em-col span="8">span: 8</em-col>
|
|
26
|
+
</em-row>
|
|
27
|
+
|
|
28
|
+
<em-row>
|
|
29
|
+
<em-col span="4">span: 4</em-col>
|
|
30
|
+
<em-col span="10" offset="4">offset: 4, span: 10</em-col>
|
|
31
|
+
</em-row>
|
|
32
|
+
|
|
33
|
+
<em-row>
|
|
34
|
+
<em-col offset="12" span="12">offset: 12, span: 12</em-col>
|
|
35
|
+
</em-row>
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
#### 设置列元素间距
|
|
39
|
+
|
|
40
|
+
通过`gutter`属性可以设置列元素之间的间距,默认间距为 `0`
|
|
41
|
+
|
|
42
|
+
```html
|
|
43
|
+
<em-row gutter="20">
|
|
44
|
+
<em-col span="8">span: 8</em-col>
|
|
45
|
+
<em-col span="8">span: 8</em-col>
|
|
46
|
+
<em-col span="8">span: 8</em-col>
|
|
47
|
+
</em-row>
|
|
48
|
+
```
|
|
49
|
+
|
|
50
|
+
#### Flex 布局
|
|
51
|
+
|
|
52
|
+
将 `type` 属性设置为 `flex` 可以启用 `flex` 布局,便于进行灵活的对齐
|
|
53
|
+
|
|
54
|
+
```html
|
|
55
|
+
<!-- 左对齐 -->
|
|
56
|
+
<em-row type="flex">
|
|
57
|
+
<em-col span="6">span: 6</em-col>
|
|
58
|
+
<em-col span="6">span: 6</em-col>
|
|
59
|
+
<em-col span="6">span: 6</em-col>
|
|
60
|
+
</em-row>
|
|
61
|
+
|
|
62
|
+
<!-- 居中 -->
|
|
63
|
+
<em-row type="flex" justify="center">
|
|
64
|
+
<em-col span="6">span: 6</em-col>
|
|
65
|
+
<em-col span="6">span: 6</em-col>
|
|
66
|
+
<em-col span="6">span: 6</em-col>
|
|
67
|
+
</em-row>
|
|
68
|
+
|
|
69
|
+
<!-- 右对齐 -->
|
|
70
|
+
<em-row type="flex" justify="end">
|
|
71
|
+
<em-col span="6">span: 6</em-col>
|
|
72
|
+
<em-col span="6">span: 6</em-col>
|
|
73
|
+
<em-col span="6">span: 6</em-col>
|
|
74
|
+
</em-row>
|
|
75
|
+
|
|
76
|
+
<!-- 两端对齐 -->
|
|
77
|
+
<em-row type="flex" justify="space-between">
|
|
78
|
+
<em-col span="6">span: 6</em-col>
|
|
79
|
+
<em-col span="6">span: 6</em-col>
|
|
80
|
+
<em-col span="6">span: 6</em-col>
|
|
81
|
+
</em-row>
|
|
82
|
+
|
|
83
|
+
<!-- 每个元素的两侧间隔相等 -->
|
|
84
|
+
<em-row type="flex" justify="space-around">
|
|
85
|
+
<em-col span="6">span: 6</em-col>
|
|
86
|
+
<em-col span="6">span: 6</em-col>
|
|
87
|
+
<em-col span="6">span: 6</em-col>
|
|
88
|
+
</em-row>
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
### API
|
|
92
|
+
|
|
93
|
+
#### Row Props
|
|
94
|
+
|
|
95
|
+
| 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
|
|
96
|
+
| :------ | :-------------------------------------------------------------------------- | :-------------- | :------ | :--------------------------------------------------- |
|
|
97
|
+
| type | 布局方式,可选值为`flex` | string | - | 否 ::: ifdef M83(weex 端只支持 flex 布局)::: endif |
|
|
98
|
+
| gutter | 列元素之间的间距(单位为 `px`) | number / string | `0` | 是 |
|
|
99
|
+
| justify | `Flex` 主轴对齐方式,可选值为 `end` `center` `space-around` `space-between` | string | `start` | 是 |
|
|
100
|
+
| align | `Flex` 交叉轴对齐方式,可选值为 `center` `bottom` | string | `top` | 是 |
|
|
101
|
+
|
|
102
|
+
#### Col Props
|
|
103
|
+
|
|
104
|
+
| 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
|
|
105
|
+
| :----- | :------------- | :-------------- | :----- | :---------------------------------- |
|
|
106
|
+
| span | 列元素宽度 | number / string | `24` | 是 |
|
|
107
|
+
| offset | 列元素偏移距离 | number / string | `0` | 是 |
|
|
108
|
+
|
|
109
|
+
#### Row Events
|
|
110
|
+
|
|
111
|
+
| 事件名 | 说明 | 回调参数 |
|
|
112
|
+
| :----- | :--------- | :----------- |
|
|
113
|
+
| click | 点击时触发 | event: Event |
|
|
114
|
+
|
|
115
|
+
#### Col Events
|
|
116
|
+
|
|
117
|
+
| 事件名 | 说明 | 回调参数 |
|
|
118
|
+
| :----- | :--------- | :----------- |
|
|
119
|
+
| click | 点击时触发 | event: Event |
|
|
120
|
+
|
|
121
|
+
::: ifdef M83
|
|
122
|
+
<iframe
|
|
123
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-layout"
|
|
124
|
+
frameborder=0
|
|
125
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
126
|
+
</iframe>
|
|
127
|
+
::: endif
|
|
128
|
+
::: ifdef M84
|
|
129
|
+
<iframe
|
|
130
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-layout"
|
|
131
|
+
frameborder=0
|
|
132
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
133
|
+
</iframe>
|
|
134
|
+
::: endif
|
|
135
|
+
|
|
136
|
+
<style>
|
|
137
|
+
.ui-showcase-iframe {
|
|
138
|
+
position: fixed;
|
|
139
|
+
right: 3.5vw;
|
|
140
|
+
top: 17%;
|
|
141
|
+
width: 375px;
|
|
142
|
+
height: 75vh;
|
|
143
|
+
box-shadow: 0 0 12px 6px #eee;
|
|
144
|
+
border-radius: 15px;
|
|
145
|
+
}
|
|
146
|
+
.main .markdown-body {
|
|
147
|
+
padding: 45px;
|
|
148
|
+
width: calc(97vw - 661px);
|
|
149
|
+
}
|
|
150
|
+
</style>
|
|
@@ -0,0 +1,144 @@
|
|
|
1
|
+
# 组件使用
|
|
2
|
+
|
|
3
|
+
## image 图片
|
|
4
|
+
|
|
5
|
+
### 介绍
|
|
6
|
+
|
|
7
|
+
- 增强版的 `img` 标签,提供多种图片填充模式,支持图片懒加载、加载中提示、加载失败提示。
|
|
8
|
+
|
|
9
|
+
::: ifdef M83
|
|
10
|
+
|
|
11
|
+
- `v8.3.11`开始支持 weex 端使用
|
|
12
|
+
|
|
13
|
+
::: endif
|
|
14
|
+
|
|
15
|
+
### 代码演示
|
|
16
|
+
|
|
17
|
+
#### 基础用法
|
|
18
|
+
|
|
19
|
+
基础用法与原生`img`标签一致,可以设置`src`、`width`、`height`等原生属性。
|
|
20
|
+
|
|
21
|
+
```html
|
|
22
|
+
<em-image width="100" height="100" src="https://img.yzcdn.cn/vant/cat.jpeg" />
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
#### 填充模式
|
|
26
|
+
|
|
27
|
+
通过`fit`属性可以设置图片填充模式,可选值见下方表格
|
|
28
|
+
|
|
29
|
+
```html
|
|
30
|
+
<em-image width="10rem" height="10rem" fit="contain" src="https://img.yzcdn.cn/vant/cat.jpeg" />
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
#### 圆形图片
|
|
34
|
+
|
|
35
|
+
通过`round`属性可以设置图片变圆,注意当图片宽高不相等且`fit`为`contain`或`scale-down`时,将无法填充一个完整的圆形。
|
|
36
|
+
|
|
37
|
+
```html
|
|
38
|
+
<em-image round width="10rem" height="10rem" src="https://img.yzcdn.cn/vant/cat.jpeg" />
|
|
39
|
+
```
|
|
40
|
+
|
|
41
|
+
#### 图片懒加载
|
|
42
|
+
|
|
43
|
+
设置`lazy-load`属性来开启图片懒加载
|
|
44
|
+
|
|
45
|
+
```html
|
|
46
|
+
<em-image width="100" height="100" lazy-load src="https://img.yzcdn.cn/vant/cat.jpeg" />
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
#### 加载中提示
|
|
50
|
+
|
|
51
|
+
`Image`组件提供了默认的加载中提示,支持通过`loading`插槽自定义内容
|
|
52
|
+
|
|
53
|
+
```html
|
|
54
|
+
<em-image src="https://img.yzcdn.cn/vant/cat.jpeg">
|
|
55
|
+
<template v-slot:loading>
|
|
56
|
+
<em-loading type="spinner" size="20" />
|
|
57
|
+
</template>
|
|
58
|
+
</em-image>
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
#### 加载失败提示
|
|
62
|
+
|
|
63
|
+
`Image`组件提供了默认的加载失败提示,支持通过`error`插槽自定义内容
|
|
64
|
+
|
|
65
|
+
```html
|
|
66
|
+
<em-image src="https://img.yzcdn.cn/vant/cat.jpeg">
|
|
67
|
+
<template v-slot:error>加载失败</template>
|
|
68
|
+
</em-image>
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
### API
|
|
72
|
+
|
|
73
|
+
#### Props
|
|
74
|
+
|
|
75
|
+
| 参数 | 说明 | 类型 | 默认值 | ::: ifdef M83 weex 端支持 ::: endif |
|
|
76
|
+
| :----------- | :------------------------------------------------------------: | :-------------- | :--------------------------------------- | :---------------------------------- |
|
|
77
|
+
| src | 图片链接 | string | - | 是 |
|
|
78
|
+
| fit | 图片填充模式 | string | 默认为`fill`,注意:`scale-down`属性无效 | 是(支持部分) |
|
|
79
|
+
| width | 宽度,默认单位为`px` | number / string | 100 | 是 |
|
|
80
|
+
| height | 高度,默认单位为`px` | number / string | 100 | 是 |
|
|
81
|
+
| radius | 圆角大小,默认单位为`px` | number / string | `0` | 是 |
|
|
82
|
+
| round | 是否显示为圆形 | boolean | `false` | 是 |
|
|
83
|
+
| lazy-load | 是否开启图片懒加载,只针对`page`与`scroll-view`下的 image 有效 | boolean | `false` | 否 |
|
|
84
|
+
| show-error | 是否展示图片加载失败提示 | boolean | `true` | 是 |
|
|
85
|
+
| show-loading | 是否展示图片加载中提示 | boolean | `true` | 是 |
|
|
86
|
+
| error-icon | 失败时提示的图标名称或图片链接 | string | `photo-fail` | 是 |
|
|
87
|
+
| loading-icon | 加载时提示的图标名称或图片链接 | string | `photo` | 是 |
|
|
88
|
+
| icon-prefix | 图标类名前缀,同 `Icon` 组件的 `class-prefix` 属性 | string | `van-icon` | 否 |
|
|
89
|
+
|
|
90
|
+
#### 图片填充模式
|
|
91
|
+
|
|
92
|
+
| 名称 | 含义 | ::: ifdef M83 weex 端支持 ::: endif |
|
|
93
|
+
| :------ | :----------------------------------------------------: | :---------------------------------- |
|
|
94
|
+
| contain | 保持宽高缩放图片,使图片的长边能完全显示出来 | 是 |
|
|
95
|
+
| cover | 保持宽高缩放图片,使图片的短边能完全显示出来,裁剪长边 | 是 |
|
|
96
|
+
| fill | 拉伸图片,使图片填满元素 | 是 |
|
|
97
|
+
| none | 保持图片原有尺寸 | 否 |
|
|
98
|
+
|
|
99
|
+
#### Events
|
|
100
|
+
|
|
101
|
+
| 事件名 | 说明 | 回调参数 |
|
|
102
|
+
| :----- | :----------------: | :----------: |
|
|
103
|
+
| click | 点击图片时触发 | event: Event |
|
|
104
|
+
| load | 图片加载完毕时触发 | - |
|
|
105
|
+
| error | 图片加载失败时触发 | - |
|
|
106
|
+
|
|
107
|
+
#### Slots
|
|
108
|
+
|
|
109
|
+
| 名称 | 说明 |
|
|
110
|
+
| :---------------- | :------------------------: |
|
|
111
|
+
| default `v8.3.11` | 自定义图片下方的内容 |
|
|
112
|
+
| loading | 自定义加载中的提示内容 |
|
|
113
|
+
| error | 自定义加载失败时的提示内容 |
|
|
114
|
+
|
|
115
|
+
::: ifdef M83
|
|
116
|
+
<iframe
|
|
117
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/index.html#/modules/m8showcase/examples/em-image"
|
|
118
|
+
frameborder=0
|
|
119
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
120
|
+
</iframe>
|
|
121
|
+
::: endif
|
|
122
|
+
::: ifdef M84
|
|
123
|
+
<iframe
|
|
124
|
+
src="//app.epoint.com.cn/m8mpdoc/showcase/m8.4/index.html#/modules/m8showcase/examples/em-image"
|
|
125
|
+
frameborder=0
|
|
126
|
+
allowfullscreen class="ui-showcase-iframe">
|
|
127
|
+
</iframe>
|
|
128
|
+
::: endif
|
|
129
|
+
|
|
130
|
+
<style>
|
|
131
|
+
.ui-showcase-iframe {
|
|
132
|
+
position: fixed;
|
|
133
|
+
right: 3.5vw;
|
|
134
|
+
top: 17%;
|
|
135
|
+
width: 375px;
|
|
136
|
+
height: 75vh;
|
|
137
|
+
box-shadow: 0 0 12px 6px #eee;
|
|
138
|
+
border-radius: 15px;
|
|
139
|
+
}
|
|
140
|
+
.main .markdown-body {
|
|
141
|
+
padding: 45px;
|
|
142
|
+
width: calc(97vw - 661px);
|
|
143
|
+
}
|
|
144
|
+
</style>
|