创建一个遮罩层,用于强调特定的页面元素,并阻止用户进行其他操作。
通过以下方式来全局注册组件,更多注册方式请参考组件注册。
import { createApp } from "vue";
import { Overlay } from "vant";
const app = createApp();
app.use(Overlay);
<van-button type="primary" text="显示遮罩层" @click="show = true" />
<van-overlay :show="show" @click="show = false" />
import { ref } from "vue";
export default {
setup() {
const show = ref(false);
return { show };
},
};
通过默认插槽可以在遮罩层上嵌入任意内容。
<van-overlay :show="show" @click="show = false">
<div class="wrapper" @click.stop>
<div class="block" />
</div>
</van-overlay>
<style>
.wrapper {
display: flex;
align-items: center;
justify-content: center;
height: 100%;
}
.block {
width: 120px;
height: 120px;
background-color: #fff;
}
</style>
参数 | 说明 | 类型 | 默认值 |
---|---|---|---|
show | 是否展示遮罩层 | boolean | false
|
z-index | z-index 层级 | number | string | 1
|
duration | 动画时长,单位秒,设置为 0 可以禁用动画 | number | string | 0.3
|
class-name | 自定义类名 | string | - |
custom-style | 自定义样式 | object | - |
lock-scroll | 是否锁定背景滚动,锁定时蒙层里的内容也将无法滚动 | boolean | true
|
lazy-render v3.4.2
|
是否在显示时才渲染节点 | boolean | true
|
事件名 | 说明 | 回调参数 |
---|---|---|
click | 点击时触发 | event: MouseEvent |
名称 | 说明 |
---|---|
default | 默认插槽,用于在遮罩层上方嵌入内容 |
组件导出以下类型定义:
import type { OverlayProps } from "vant";
组件提供了下列 CSS 变量,可用于自定义样式,使用方法请参考 ConfigProvider 组件。
名称 | 默认值 | 描述 |
---|---|---|
--van-overlay-z-index | 1 | - |
--van-overlay-background | rgba(0, 0, 0, 0.7) | - |
介绍单元格为列表中的单个展示项。实例演示引入通过以下方式来全局注册组件,更多注册方式请参考组件注册。import { createApp }...
介绍方便地进行事件绑定,在组件mounted和activated时绑定事件,unmounted和deactivated时解绑事件。代码演示基本用法import { r...
介绍商品卡片,用于展示商品的图片、价格等信息。实例演示引入通过以下方式来全局注册组件,更多注册方式请参考组件注册。import...
介绍数据量过多时,采用分页的形式将数据分隔,每次只加载一个页面。实例演示引入通过以下方式来全局注册组件,更多注册方式请参...