记一次[Vue warn]: Error in beforeCreate hook: "RangeError: Maximum call stack

在这里插入图片描述

解决思路:

    at matchRoute (vue-router.esm.js?8c4f:1643)
    at match (vue-router.esm.js?8c4f:1525)
    at redirect (vue-router.esm.js?8c4f:1585)
    at _createRoute (vue-router.esm.js?8c4f:1624)
    at match (vue-router.esm.js?8c4f:1526)
    at redirect (vue-router.esm.js?8c4f:1585)
    at _createRoute (vue-router.esm.js?8c4f:1624)
  • Maximum call stack意思是超过最大的执行堆栈,白话就是死循环了。正常业务逻辑并不会产生这样的问题。

观察错误得出,vue-router.esm.js文件里面的一直在执行match函数,然后再执行redirect,一直再重复这个match和redirect函数。
而这两个函数都是由vue-router.js文件发出的,这个文件的是在项目的路由配置文件中引入的。那么可以讲问题定位到我们的router.js文件中。match是个正则匹配函数,暂时不管,看配置有没有redirect。原来是redirect到‘/’,而‘/’不存在,所以一直在循环。

在这里插入图片描述

Logo

前往低代码交流专区

更多推荐