VUE前端编程:简单实现一个通用等待弹窗

boyanx3个月前技术教程10

在后端服务调用等待时,为防止前端误操作,一般会在前端实现一个等待弹窗,今天简单实现了一个,效果如下图:


作用嘛,一个是遮罩前端页面,二是提供信息提示,告知用户正在做什么操作,用了多长时间等等。


实现方式如下:

弹窗事件跟踪器

实现一个hander,用以跟踪和监控弹窗事件ON-PENDING,这个Handler需要在main.js中注册并和EventBus关联,代码如下图所示,


pendingHandler.eventBus=Vue.prototype.$EventBus;

Vue.prototype.$pendingHandler=pendingHandler;

let main=new Vue({

router,

store,

render: h => h(App)

}).$mount('#app')


main.$pendingHandler.startMonitor();


弹窗组件

用全局弹窗(可以参考之前我写的全局弹窗实现)封装一个弹窗组件,弹窗中实现一个计时器和一些必要的操作信息,这里我还引入了一个AntD的spin,大家可以视实际需要加入自己想要的信息。


注意,这里这个组件要跟踪OFF-PENDING实践,用以关闭弹窗,代码如下:

mounted(){

this.$EventBus.$on('OFF-PENDING',this.onClosePendingDialog);

this.start();

this.$emit('onUnenableActions');

},

beforeDestroy(){

this.$EventBus.$off('OFF-PENDING')

}


现场调用

在需要调用API时,可以进行弹窗的调用,并在回调完成时关闭弹窗。代码如下图所示:



功能反思

到这里为止,功能实现完毕了,但感觉还是有改进的空间,如在Axios的拦截器上做通用的显示和终止弹窗等等。我个人水平有限,有很多地方考虑不周,大家如果有好的方案可以多多交流。



#前端##编程##javascript##我上头条##生活中的小美好#

标签: js弹窗

相关文章

javascript超长知识归纳总结_javascript常用

基本概念javascript简称js,是一种脚本语言,用来操作HTML中的节点,产生动态效果。包括三大模块。ECMAScript:是javascript核心语法;json是其中一种轻量级的数据交换格式...

JavaScript学习笔记--JS中的变量复制、参数传递和作用域链

今天在看书的过程中,又发现了自己目前对Javascript存在的一个知识模糊点:JS的作用域链,所以就通过查资料看书对作用域链相关的内容进行了学习。今天学习笔记主要有这样几个关键字:变量、参数传递、执...

JS打造“九宫格抽奖”_js实现九宫格抽奖

在如今的营销活动中,抽奖功能已经成为提升用户活跃度的标配。尤其是“九宫格抽奖”这种形式,因其视觉冲击力强、交互简单、适配性好,被广泛应用于电商、社交、内容平台等各类场景。本文将带你从零开始,使用 原生...

JavaScript 事件循环机制详解_js事件循环和任务队列

记录、分享IT相关知识和见闻!想要了解更多软件相关知识的朋友!记得右上角添加【关注】,支持一下!JavaScript 是单线程语言,意味着同一时间只能执行一个任务。为了处理异步操作(如定时器、网络请求...

电脑老是弹出广告怎么解决_电脑老是弹出广告怎么弄掉

 最近在使用电脑的时候,遇到了一种让人抓狂的现象:电脑开机启动后,会直接弹出广告,把广告关闭,本以为会万事大吉,没想到每过一段时间广告都会再次弹出。我们不可能一直忍受这样的广告不断的弹出,这会严重影响...

JavaScript 常用事件大全:从基础到实战应用

JavaScript 事件是交互开发的核心,它允许代码响应用户操作、浏览器行为或文档变化。本文将从基础概念出发,分类梳理常用事件,并结合实战场景说明其应用,帮助你系统掌握事件编程。一、事件基础:核心概...

发表评论    

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。