ローカルストレージ(vuex,tokenは継続的に有効)

5859 ワード

ローカルストレージ(vuex,tokenは継続的に有効)
私はパッケージのloca.jsファイルjsをsrcの中に入れてap.vueと同じレベルにします.
export default{
           //  
           save(key,val){
               localStorage.setItem(key,JSON.stringify(val))
           },
           //   
           fetch(key){
               return JSON.parse(localStorage.getItem(key)) || []
           }
        }
保存するtokenをcommt方法でstoreに伝える
 this.$store.commit("login",res.data.data.token)
store>index.jsはパッケージされたlocaを導入します.例えば(import loca from'./loca')
 mutations:{
        login(state,token){
            state.token=token
            loca.save('chx',state.token)
        }
    }
ページアプリ取り出し(パッケージに組み込まれたlocaを導入)
created() {
    let token=loca.fetch('chx')
    this.$store.commit('login',token)
  }
|𞓜srcで作成されたaxiosパッケージの固定ルートconfigファイルの下でindex.js
const config={
    baseUrl:'    '  
    //baseUrl         
    }
export default config
utilsの下のhttp.js(axiosパッケージインターフェース)
//  import config from "../config"
//          ,    use                
Axios.interceptors.request.use(config=>{
    //      ,  token   Authorization  
    config.headers.Authorization = loca.fetch("chx")
    return config
  })