# mx-image 图片
增强版的 img 标签,提供多种图片填充模式,支持图片懒加载、加载中提示、加载失败提示。
# 引入
在app.json或index.json中引入组件,详细介绍见快速上手
"usingComponents": {
"mx-image": "/miniprogram_npm/m-ui/mx-image/index"
}
# 小程序码
可使用微信扫码查看小程序码
#
# 代码演示
# 基本用法
基础用法与原生 image 标签一致,可以设置src、width、height等原生属性。
<mx-image width="100" height="100" src="https://mail.midea.com/coremail/common/index_cmxt30/images/logonBg.jpg" />
# 填充模式
通过fit属性可以设置图片填充模式,可选值见下方表格。
<mx-image
width="10rem"
height="10rem"
fit="contain"
src="https://mail.midea.com/coremail/common/index_cmxt30/images/logonBg.jpg"
/>
# 圆形图片
通过round属性可以设置图片变圆,注意当图片宽高不相等且fit为contain或scale-down时,将无法填充一个完整的圆形。
<mx-image
round
width="10rem"
height="10rem"
src="https://mail.midea.com/coremail/common/index_cmxt30/images/logonBg.jpg"
/>
# 图片懒加载
图片懒加载,在即将进入一定范围(上下三屏)时才开始加载。
<mx-image
width="100"
height="100"
lazy-load
src="https://mail.midea.com/coremail/common/index_cmxt30/images/logonBg.jpg"
/>
# 加载中提示
Image组件提供了默认的加载中提示,支持通过loading插槽自定义内容。plate字段展示不同平台的默认专家在图片。
<mx-image use-loading-slot>
<mx-loading slot="loading" type="spinner" size="20" vertical />
</mx-image>
<mx-image width="100%" plate="meiju" loading-class="custom-meiju-loading-class" height="27vw" />
<mx-image width="100%" plate="toshiba" loading-class="custom-loading-class" height="27vw" />
# 加载失败提示
Image组件提供了默认的加载失败提示,支持通过error插槽自定义内容。
<mx-image use-error-slot>
<text slot="error">加载失败</text>
</mx-image>
# API
# Props
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
src | 图片链接 | string | - |
fit | 图片填充模式 | string | fill |
alt | 替代文本 | string | - |
width | 宽度,默认单位为px | string, number | - |
height | 高度,默认单位为px | string、number | - |
radius | 圆角大小,默认单位为px | string、number | 0 |
round | 是否显示为圆形 | boolean | false |
lazy-load | 是否懒加载 | boolean | false |
plate | 使用平台。可选值 meiju,toshiba | string | `` |
show-error | 是否展示图片加载失败提示 | boolean | true |
show-loading | 是否展示图片加载中提示 | boolean | true |
use-error-slot | 是否使用 error 插槽 | boolean | false |
use-loading-slot | 是否使用 loading 插槽 | boolean | false |
show-menu-by-longpress | 是否开启长按图片显示识别小程序码菜单 | boolean | false |
# 图片填充模式
名称 | 含义 |
---|---|
contain | 保持宽高缩放图片,使图片的长边能完全显示出来 |
cover | 保持宽高缩放图片,使图片的短边能完全显示出来,裁剪长边 |
fill | 拉伸图片,使图片填满元素 |
widthFix | 缩放模式,宽度不变,高度自动变化,保持原图宽高比不变 |
heightFix | 缩放模式,高度不变,宽度自动变化,保持原图宽高比不变 |
none | 保持图片原有尺寸 |
# Event
事件名 | 说明 | 参数 |
---|---|---|
bind:click | 点击图片时触发 | event: Event |
bind:load | 图片加载完毕时触发 | event: Event |
bind:error | 图片加载失败时触发 | event: Event |
# Slots
名称 | 说明 |
---|---|
loading | 自定义加载中的提示内容 |
error | 自定义加载失败时的提示内容 |
# 外部样式类
名称 | 说明 |
---|---|
custom-class | 根节点样式类 |
image-class | 图片样式类 |
loading-class | loading 样式类 |
error-class | error 样式类 |
← 图标(icon) 动画组件(lottie) →