Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 | 7x 7x 7x | <template>
<div v-if="false"></div>
</template>
<script>
let uid = 0;
export default {
name: 'u-toast-single',
props: {
position: { type: String, default: 'top-center' },
single: { type: Boolean, default: false },
maxCount: { type: Number, default: 3 },
duration: { type: Number, default: 3000 },
color: { type: String },
text: String,
closable: { type: Boolean, default: false },
customIcon: { type: String },
},
data() {
return {
key: `u-toast-${uid++}`,
};
},
methods: {
open() {
const staticStyle = this.$vnode.data.staticStyle;
this.$toast.openToast({
key: this.key,
text: this.text,
color: this.color,
duration: this.duration,
customIcon: this.customIcon,
onShow: () => {
this.$emit('open');
},
onHide: () => {
this.$emit('close');
},
staticStyle: this.filterCSSVarInStyle(staticStyle),
});
},
close() {
this.$toast.closeToast(this.key);
},
filterCSSVarInStyle(staticStyle) {
const style = {};
for (const key in staticStyle) {
if (Object.prototype.hasOwnProperty.call(staticStyle, key)) {
if (/^--/.test(key)) {
const value = staticStyle[key];
style[key] = value;
}
}
}
return style;
},
},
};
</script>
|