一、问题描述
当我登录使用了elementUI的vue2项目时,输入用户名密码点击确定,报如下错误。
TypeError: sub is not a function at vuex.esm.js:422:1 at Array.forEach (<anonymous>) at Store.dispatch (vuex.esm.js:422:1) at Store.boundDispatch [as dispatch] (vuex.esm.js:332:1) at permissionsControl (permission.js:56:1) at permission.js:131:1 at iterator (vue-router.esm.js:1943:1) at step (vue-router.esm.js:1717:1) at step (vue-router.esm.js:1721:1) at runQueue (vue-router.esm.js:1725:1)
起初我以为是后端接口被动过,发现不是。
二、解决方案
经过百度搜索,发现问题:
💡 Microsoft Edge 中使用Vue DevTools(Vue.js devtools beta ax 版本6.0.0 beta 20) 报错,引起页面vue页面无法跳转,关闭vue调试插件使用就可以了
原来是我F12打开了开发者工具,并且打开了vue面板,然后再点击了登录按钮导致。vue面板会拦截路由请求。
解决起来很简单,就是关闭开发者工具,然后刷新登录页面,再点击按钮即可。