import { Message } from 'element-ui'
let messageInstance = null;
const resetMessage = (options) => {
if (messageInstance) {
messageInstance.close()
}
messageInstance = Message(options)
};
['error', 'success', 'info', 'warning'].forEach(type => {
resetMessage[type] = options => {
if (typeof options === 'string') {
options = {
message: options
}
}
options.type = type
return resetMessage(options)
}
})
export const message = resetMessage
这段代码的主要作用之一就是防止重复点击重复弹出消息弹框。通过创建 messageInstance 变量来存储当前消息实例,并在每次调用 resetMessage 函数时先关闭已有的消息实例,然后再创建新的消息实例。这样可以确保在消息弹框未关闭的情况下,避免重复触发消息弹框。
这种做法可以有效地控制消息弹框的显示,避免消息重复弹出的情况,提升用户体验。