overlay 遮罩层
创建一个遮罩层,用于强调特定的页面元素,并阻止用户进行其他操作。
Props参数
名称 | 类型 | 是否必传 | 默认值 | 描述 |
---|---|---|---|---|
visible | boolean | ✅ | - | 是否显示 |
coverView | boolean | 否 | - | 是否启用coverView |
由于小程序普通的view无法阻止点击穿透 | ||||
所以在你需要阻止点击穿透时。可以启用coveView | ||||
具体使用参照toast组件 | ||||
maskColor | boolean | 否 | - | 是否显示遮罩颜色 |
catchTouchMove | boolean | 否 | - | 是否以 catch 的形式绑定 touchmove 事件 |
onClick | () => void | 否 | - | 点击蒙层事件 |
示例
tsx
import { useState } from 'react'
import MMOverlay from '~/components/overlay'
import MMButton from '~/components/button'
import MMPageContainer from '../_components/page-container'
import MMCard from '~/components/card'
import { View } from '@tarojs/components'
import styles from './index.module.less'
export default () => {
const [visible, setVisible] = useState(false)
return (
<MMPageContainer title="蒙层">
<MMOverlay visible={visible} onClick={() => setVisible(false)}>
<View className={styles.wrapper}>
<MMCard onClick={() => setVisible(false)}>点我关闭</MMCard>
</View>
</MMOverlay>
<MMButton onClick={() => setVisible((pre) => !pre)}>显示蒙层</MMButton>
</MMPageContainer>
)
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23