vue local Storrageを使って登録情報を保存すると、モバイル端末、PC端末に適用されます。
3056 ワード
よく知られているように、vueはモバイル端末アプリを開発するために使えます。hbuilderを使ってbuildの良いvueをモバイル端末のappに包装します。しかし、使ったら、cookiesまたはsessionを使って登録のtokenを保存します。携帯端末では保存できません。じゃ私達はlocal Strageを使って登録情報を保存すればいいです。具体的なコードは以下の通りです。
1、vuex stroeコード
index.js
アメリカ.js
1、vuex stroeコード
index.js
import Vue from 'vue'
import vuex from 'vuex'
import { login, logout, getInfo } from '@/api/login'
import { getToken, setToken, removeToken, setlocalStorage, getlocalStorage, removelocalStorage } from '@/utils/user'
Vue.use(vuex);
//state
const state = {
x:5,
token: getlocalStorage(),
nickname: '',
course_id: 0,
user_id: 0,
group_id: 0,
begin_group_num: 0,
student_group: 0
};
// mutation
//actions
const mutations = {
SET_TOKEN: (state, token) => {
state.token = token
},
SET_NAME: (state, nickname) => {
state.nickname = nickname
},
};
const actions = {
Login({ commit }, userInfo) {
const username = userInfo.username.trim()
return new Promise((resolve, reject) => {
login(username, userInfo.password).then(response => {
const data = response.data
setlocalStorage(data.token)
commit('SET_TOKEN', data.token)
resolve()
}).catch(error => {
console.log()
reject(error)
})
})
},
GetInfo({ commit }) {
return new Promise((resolve, reject) => {
getInfo().then(response => {
const data = response.data
console.log(data)
commit('SET_NAME', data.nickname)
resolve()
}).catch(error => {
console.log()
})
})
},
//
FedLogOut({ commit }) {
return new Promise(resolve => {
commit('SET_TOKEN', '')
removelocalStorage()
resolve()
})
}
};
//getters ,getters , created
const getters = {
// getters
x: state => state.x + 200,
};
export default new vuex.Store({
state,
mutations,
getters,
actions
})
2、local Strageコードアメリカ.js
import Cookies from 'js-cookie'
const TokenKey = 'MuseUi-Token'
export function getToken() {
return Cookies.get(TokenKey)
}
export function setToken(token) {
return Cookies.set(TokenKey, token)
}
export function removeToken() {
return Cookies.remove(TokenKey)
}
const SessionKey = 'usertoken'
export function setlocalStorage(token) {
return localStorage.setItem(SessionKey,token)
}
export function getlocalStorage() {
return localStorage.getItem(SessionKey)
}
export function removelocalStorage() {
return localStorage.setItem(SessionKey,null)
}
以上が本文の全部です。皆さんの勉強に役に立つように、私たちを応援してください。