Nuxt 2.15.7删除登录页后auth.js仍保留旧重定向配置如何解决
这不是bug,是你未显式配置@nuxtjs/auth-next模块的重定向规则导致的。该模块默认内置了/login作为登录跳转的默认路径,无论你pages目录下的文件如何调整,只要没有覆盖对应配置,生成.nuxt目录时都会写入默认的重定向值。
解决方案
步骤1:修改nuxt.config.js的auth配置
找到你配置文件中空的auth字段,补充redirect配置,指向调整后的登录页路径(如果你把登录页放在pages/auth/login.vue,对应路由就是/auth/login,可以根据你的实际路径调整):
auth: { redirect: { login: '/auth/login', // 替换为你实际的登录页路由 logout: '/', home: '/', callback: '/auth/login' // 若你用到第三方登录回调,可修改为对应回调路径 } }
步骤2:清理缓存重启项目
- 终止当前正在运行的开发服务
- 删除项目根目录下的
.nuxt文件夹,同时删除node_modules/.cache文件夹避免缓存残留 - 重新执行
npm run dev或yarn dev启动项目
验证
启动完成后检查.nuxt/auth.js中的redirect配置,已经同步为你自定义的路径,访问未授权页面时也会正常跳转到新的登录页地址。
你之前操作的移除middleware配置、删除middleware文件夹对该问题无影响,因为auth模块的重定向配置是模块自身的内置默认配置,和项目自定义的middleware无关。
内容的提问来源于stack exchange,提问作者druj_nasu
相关产品推荐
相关产品推荐

