# 介绍
创建一个遮罩层,用于强调特定的页面元素,并阻止用户进行其他操作。
# 引入
在app.json或index.json中引入组件,详细介绍见快速上手
"usingComponents": {
"mx-overlay": "/miniprogram_npm/m-ui/mx-overlay/index",
}
# 小程序码
可使用微信扫码查看小程序码
#
# 代码演示
# 基本用法
<mx-button type="primary" bind:click="onClickShow">显示遮罩层</mx-button>
<mx-overlay show="{{ show }}" bind:click="onClickHide" />
Page({
data: {
show: false,
},
onClickShow() {
this.setData({ show: true });
},
onClickHide() {
this.setData({ show: false });
},
});
# 嵌入内容
通过默认插槽可以在遮罩层上嵌入任意内容。
<mx-button type="primary" bind:click="onClickShow">嵌入内容</mx-button>
<mx-overlay show="{{ show }}" bind:click="onClickHide">
<view class="wrapper">
<view class="block" catch:tap="noop" />
</view>
</mx-overlay>
Page({
data: {
show: false,
},
onClickShow() {
this.setData({ show: true });
},
onClickHide() {
this.setData({ show: false });
},
noop() {},
});
.wrapper {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.block {
width: 120px;
height: 120px;
background-color: #fff;
}
# API
# Props
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
show | 是否展示遮罩层 | boolean | false |
z-index | z-index 层级 | string、number | 1 |
duration | 动画时长,单位秒 | string、number | 0.3 |
class-name | 自定义类名 | string | - |
custom-style | 自定义样式 | string | - |
lock-scroll | 是否锁定背景滚动,锁定时蒙层里的内容也将无法滚动 | boolean | true |
# Event
事件名 | 说明 | 参数 |
---|---|---|
bind:click | 点击时触发 | - |
# Slot
名称 | 说明 |
---|---|
- | 默认插槽,用于在遮罩层上方嵌入内容 |