Token的持久化处理

引入js-cookie插件来完成对token的持久化处理

安装js-cookie

npm install --save js-cookie

在组件中引入使用

定义三个函数并导出去

import Cookies from 'js-cookie'

const TokenKey = 'wwt_token'

export function getToken() {
  return Cookies.get(TokenKey)
}

export function setToken(token) {
  return Cookies.set(TokenKey, token)
}

export function removeToken() {
  return Cookies.remove(TokenKey)
}

Token的持久化处理_第1张图片

页面中通过dispatch触发action函数

 this.$store.dispatch('user/login', this.loginForm)

给哪个模块(user模块)中的哪个action函数(login函数)传递什么参数(用户输入的手机号和密码)

在vuex用户登录模块中

//导入三个函数
import { getToken, setToken, removeToken } from '../../utils/auth'
const state = {
  token: getToken() //从本地取出token
}

const mutations = {
  setToken(state, value) {
    state.token = value
    setToken(value) //将token存入本地
  },
  removeToken(state) {
    state.token = null
    removeToken() //移除token
  }
}

const actions = {
  login(context, value) {
    console.log(value)
    context.commit('setToken', '123456')
  }
}

export default {
  namespaced: true,
  state,
  mutations,
  actions
}

Token的持久化处理_第2张图片

你可能感兴趣的:(实际应用,前端,javascript,html)