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跳轉使用的服務端渲染,使用的路由鈎子函數跳轉使用客戶端渲染