23 lines
667 B
TypeScript

import {createVNode, render} from 'vue'
import Toast from './Toast.vue'
export const toast = (message: string) => {
if (timer) clearTimeout(timer)
let div = document.querySelector('.message-wrapper');
if (!div) {
div = document.createElement('div');
div.classList.add("message-wrapper");
document.body.append(div);
}
// TODO 完善多消息同时共存 - 主要时添加新的容器
const messageNode = createVNode(Toast, {message})
render(messageNode, div)
// @ts-ignore
timer = setTimeout(() => {
div.removeChild(messageNode.el as Node)
}, 3000)
}
let timer = 0;
export default {
toast,
}