[improvement] Overlay: jsx (#2559)

This commit is contained in:
neverland 2019-01-19 09:26:51 +08:00 committed by GitHub
parent a5c39425e8
commit 1f1d55eab2
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 36 additions and 34 deletions

36
packages/overlay/index.js Normal file
View File

@ -0,0 +1,36 @@
import { use } from '../utils';
const [sfc, bem] = use('overlay');
export default sfc({
props: {
zIndex: Number,
visible: Boolean,
className: String,
customStyle: Object
},
render(h) {
const style = {
zIndex: this.zIndex,
...this.customStyle
};
return (
<transition name="van-fade">
<div
v-show={this.visible}
style={style}
class={[bem(), this.className]}
onTouchmove={event => {
event.preventDefault();
event.stopPropagation();
}}
onClick={event => {
this.$emit('click', event);
}}
/>
</transition>
);
}
});

View File

@ -1,34 +0,0 @@
<template>
<transition name="van-fade">
<div
v-show="visible"
class="van-overlay"
:class="className"
:style="style"
@touchmove.prevent.stop
@click="$emit('click', $event)"
/>
</transition>
</template>
<script>
export default {
name: 'overlay',
props: {
zIndex: Number,
visible: Boolean,
className: String,
customStyle: Object
},
computed: {
style() {
return {
zIndex: this.zIndex,
...this.customStyle
};
}
}
};
</script>