登录这里的中间件,没看到在哪里调用了啊?

来源:8-3 完善管理员登录流程

拖车板牙爵士

2017-09-25

没有看到新建的middleware在哪里调用啊?这个实现逻辑没听明白,我这样理解对不对?

1、vue组件中发起http请求,

2、在请求之前先从vuex的store中拿用户信息,如果能拿到就说明登录成功,如果拿不到则重定向路由到login。


写回答

1回答

Scott

2017-10-01

理解是对的。


但这里分页面首次加载还是 SPA 页面二次跳转,登录状态除了从 vuex 中拿之外,从 middleware 中的 auth 来判断,还有服务器端渲染时候,通过 nuxtServerInit 所配置的 session user 信息同步,至于 middleware 的调用,是 nuxt 框架自行完成的,只不过需要你在 vue 页面中 middleware: 'auth'
 指定一下,比如 admin/index.vue


<template>
.content
  h3 登录成功 {{user.email}}
</template>
<script>
import { mapState } from 'vuex'
export default {
  middleware: 'auth',
  layout: 'admin',
  head () {
    return {
      title: '后台管理首页'
    }
  },
  computed: mapState([
    'user'
  ])
}
</script>
<style src='~static/sass/admin.sass'></style>


0
0

开发微信全家桶项目Vue/Node/MongoDB高级技术栈全覆盖

Nuxt/Vue SSR + Koa2 跨栈开发微信公众号+小程序

989 学习 · 401 问题

查看课程