【问题已解决】Vue管理后台,点击登录按钮,会发起两次网络请求(竟然是vscode Compile Hero编译插件导致的)

问题

Vue+Element UI 做的管理后台,点击登录按钮,发现 接口会连续掉两次发起两次网络请求,但其他接口都是正常调用的,没有这个问题,并且登录按钮也加了loading,防止重复点击,于是开始进行排查

排查

request文件以及 接口封装都排查了 没有发现问题,最后通过打断点,一步一步调试,发现是因为 this.$store.dispatch("Login", user),是dispatch触发了两次方法,发起了两次网络请求

找到问题了,想换一种方法来写登录这块的逻辑,但是代码改动比较大,而且治标不治本,

思考

这种写法本身没有什么问题,那么为什么会触发两次呐?

最后发现竟然是vs code中的下载了插件导致的

bash 复制代码
Vs code中Sass/Less/Stylus/Pug/Jade/Typescript/Javascript Compile Hero Pro插件

在VSCode安装了这个插件后,会有这个问题,保存后会在我本地文件store里,生成dist文件夹,里面有同名的文件(名字.devjs),所以每次执行actions都运行两次

解决办法

果断选择卸载该插件,

小小记录一下~ 实在是没想过这方面会影响,一直以为是代码写的有问题,排查了一下午的时间

Tips

如果发现 卸载了插件,页面有报错,

报错信息为"Module build failed (from ./node_modules/sass-loader/dist/cjs.js)"错误

清理缓存 有时缓存问题可能导致编译错误。尝试清理缓存并重新构建项目

在终端输入

npm cache clean --force

npm install

即可解决该问题~ (我遇到了哈~小小记录一下)

相关推荐
青山Coding1 小时前
Cesium应用(八):物体运动的实现思路
前端·cesium
用户41659673693551 小时前
Android WebView 加载 file:// 离线页面调试教程
android·前端
Asmewill1 小时前
curl命令学习笔记一
前端
我是一只快乐的小螃蟹1 小时前
1.2 ArrayList 源码解析
前端
星栈1 小时前
我用 Rust + Dioxus 做了个全栈跨平台笔记应用:再把新建、编辑和交付补上
前端·rust·前端框架
我是一只快乐的小螃蟹1 小时前
1.1 HashMap (JDK1.8) 源码解析
前端
爱勇宝4 小时前
小红花成长新版:模板来了,鼓励也更容易开始
前端·后端·程序员
竹林8185 小时前
Solana前端开发:我在一个NFT铸造页面上被@solana/web3.js的Connection和Transaction签名坑了两天
前端
冬奇Lab5 小时前
每日一个开源项目(第144篇):ai-website-cloner-template - 一条命令、多 Agent 并行,把任意网站逆向成 Next.js 代码
前端·人工智能·开源
玄玄子5 小时前
webpack publicPath作用原理
前端·webpack·程序员