美文网首页
在nuxt的middleware中使用redirect问题

在nuxt的middleware中使用redirect问题

作者: muroujue | 来源:发表于2018-05-25 14:59 被阅读0次

    nuxt的middleware会被用来处理页面加载前的一些逻辑,比如该页面需要用户登录,会在middleware中判断,需要时跳转登录页。

    export default async function ({ app , req , redirect , route }){
      let token = app.$cookies.cookies && app.$cookies.cookies.token ? app.$cookies.cookies.token : null
      let path = process.server ? req.path : route.path
      if ( path ) {
        redirect({ path: '//m.xxx.com/account/register' })
      }
    }
    

    如果从服务端走这段代码,很顺利。但是走客户端时,会闪过一个500报错页面,再重定向到指定页面。
    经调查好像也是nuxt的一个bug,如果跳转nuxt项目中的页面path没事,但是跳外站点则会出现这个现象。
    考虑临时解决方案是在上一个页面时就判断token值,如果有使用路由跳转,没有则使用window.location.href进入下一个页面。

    相关文章

      网友评论

          本文标题:在nuxt的middleware中使用redirect问题

          本文链接:https://www.haomeiwen.com/subject/euxujftx.html