export default ({store, redirect} => { if (!store.state.username) { redirect('/') } })
vuex 代码处理请求,nuxtServerInit 是每次请求都会执行的方法,state是导出的函数,目的是为了防止多个用户使用同一个状态
export const state = () => { username: '' } export const actions = { nuxtServerInit({commit}, {request}) { if (request.session.user) { const('SET_USER', request.session.user.username) } } } export const mutations = { SET_USER(state, username) { state.username = username } }
使用href跳转使用的服务端渲染,使用的路由钩子函数跳转使用客户端渲染