Loding效果封装
安装依赖支持
- 封装之前的准备,也可以在用到时候再去npm下载支持
1 | // 依赖 |
因为封装的Loding是通过在Vue的请求拦截器判断axios请求发送与否去显示隐藏全局的Loding
所以简便一点,请求必然会携带cookie,通过判断cookie的变化来控制Loding的显示与隐藏,js-cookie
因此而存在其次Element_UI里有成熟的Loding解决方案,并且也能较好与Vue兼容,也可以自己写
在一个代码优化定义一个Loding变量。
- 引入并使用Element中的Loding开始于结束并定义好方法
1 |
|
- 接下来要做的就是showFullScreenLoading() tryHideFullScreenLoading()要干的事儿就是将同一时刻的请求合并。
1 | // 声明一个变量 needLoadingRequestCount,每次调用showFullScreenLoading方法 needLoadingRequestCount + 1 。 |
- 什么时候调用和停止loding
- 判断什么时候调用loding和关闭loding之前需要先引入
js-cookie
插件 - http 请求拦截器中判断cookie中携带的参数,状态等如果结果为undefined则什么都不做,如果cookie中包含用户状态…
- 如果请求出错,后端返回错误提示信息等,这时也结束loding
1 |
|
- 大体算封装完成,但具体用的时候还需根据不同页面具情况修改代码,并不能拿到就用。