1 | ## Overlay 蒙版层
|
2 | > 考虑: `Modal` 会起一个新的 `Activity(Android)`, 那么 `visible = false` 时候的隐藏是直接被销毁了呢还是缓存了
|
3 |
|
4 | [Demo](https://github.com/rnxteam/rnx-ui/blob/master/Example/src/page/Overlay/index.js)
|
5 |
|
6 | ```js
|
7 | Overlay.propTypes = {
|
8 | // 显示开关
|
9 | visible: PropTypes.bool.isRequired,
|
10 | // 点击回调
|
11 | onPress: PropTypes.func,
|
12 | // 自定义样式
|
13 | style: View.propTypes.style,
|
14 | // 子元素
|
15 | children: PropTypes.oneOfType([PropTypes.element, PropTypes.array]),
|
16 | // 控制 Overlay 是否可以作为触控事件的目标(参考 https://facebook.github.io/react-native/docs/view.html#pointerevents)
|
17 | pointerEvents: View.propTypes.pointerEvents,
|
18 | // 动画时长
|
19 | duration: PropTypes.number,
|
20 | // 是否使用动画
|
21 | useAnimation: PropTypes.bool,
|
22 | };
|
23 | Overlay.defaultProps = {
|
24 | visible: false,
|
25 | onPress: NOOP,
|
26 | style: null,
|
27 | children: null,
|
28 | pointerEvents: 'auto',
|
29 | duration: 200,
|
30 | useAnimation: true,
|
31 | };
|
32 | ``` |
\ | No newline at end of file |