mirror of
https://github.com/youzan/vant.git
synced 2025-10-20 18:54:24 +00:00
[bugfix] Toast: overlay blocked by other element (#740)
This commit is contained in:
@@ -1,35 +1,33 @@
|
||||
<template>
|
||||
<transition name="van-fade">
|
||||
<div class="van-toast-wrapper" v-show="visible">
|
||||
<div class="van-toast" :class="[`van-toast--${displayStyle}`, `van-toast--${position}`]">
|
||||
<!-- text only -->
|
||||
<div v-if="displayStyle === 'text'">{{ message }}</div>
|
||||
<div v-if="displayStyle === 'html'" v-html="message" />
|
||||
<div class="van-toast" :class="[`van-toast--${displayStyle}`, `van-toast--${position}`]" v-show="value">
|
||||
<!-- text only -->
|
||||
<div v-if="displayStyle === 'text'">{{ message }}</div>
|
||||
<div v-if="displayStyle === 'html'" v-html="message" />
|
||||
|
||||
<!-- with icon -->
|
||||
<template v-if="displayStyle === 'default'">
|
||||
<loading v-if="type === 'loading'" color="white" />
|
||||
<icon v-else class="van-toast__icon" :name="type" />
|
||||
<div v-if="hasMessage" class="van-toast__text">{{ message }}</div>
|
||||
</template>
|
||||
</div>
|
||||
<div class="van-toast__overlay" :class="{ 'van-toast__overlay--mask': mask }" v-if="forbidClick || mask" />
|
||||
<!-- with icon -->
|
||||
<template v-if="displayStyle === 'default'">
|
||||
<loading v-if="type === 'loading'" color="white" />
|
||||
<icon v-else class="van-toast__icon" :name="type" />
|
||||
<div v-if="hasMessage" class="van-toast__text">{{ message }}</div>
|
||||
</template>
|
||||
</div>
|
||||
</transition>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import create from '../utils/create';
|
||||
import Popup from '../mixins/popup';
|
||||
|
||||
const STYLE_LIST = ['success', 'fail', 'loading'];
|
||||
|
||||
export default create({
|
||||
name: 'toast',
|
||||
|
||||
mixins: [Popup],
|
||||
|
||||
props: {
|
||||
mask: Boolean,
|
||||
message: [String, Number],
|
||||
forbidClick: Boolean,
|
||||
type: {
|
||||
type: String,
|
||||
default: 'text'
|
||||
@@ -37,15 +35,13 @@ export default create({
|
||||
position: {
|
||||
type: String,
|
||||
default: 'middle'
|
||||
},
|
||||
lockScroll: {
|
||||
type: Boolean,
|
||||
default: false
|
||||
}
|
||||
},
|
||||
|
||||
data() {
|
||||
return {
|
||||
visible: false
|
||||
};
|
||||
},
|
||||
|
||||
computed: {
|
||||
displayStyle() {
|
||||
return STYLE_LIST.indexOf(this.type) !== -1 ? 'default' : this.type;
|
||||
|
Reference in New Issue
Block a user