Js file encapsulation

*/ function validatenull(val) {if (typeof val === 'Boolean ') {return false} if (typeof val === 'number')  { return false } if (val instanceof Array) { if (val.length == 0) return true } else if (val instanceof Object) { if (JSON.stringify(val) === '{}') return true } else { if (val == 'null' || val == null || val == 'undefined' || val == Undefined | | val = = ' ') return true return return false false}} / * * * * set the key name/const keyName = 'QXH' + '_'. /** * localStorage */ export const setStore = (params = {}) => {let {name, content, type,} = params; name = keyName + name let obj = { dataType: typeof (content), content: content, type: type, datetime: new Date().getTime() } if (type) window.sessionStorage.setItem(name, JSON.stringify(obj)); else window.localStorage.setItem(name, JSON.stringify(obj)); } /** * export const getStore = (params = {}) => {let {name, debug} = params; name = keyName + name let obj = {}, content; obj = window.sessionStorage.getItem(name); if (validatenull(obj)) obj = window.localStorage.getItem(name); if (validatenull(obj)) return; try { obj = JSON.parse(obj); } catch { return obj; } if (debug) { return obj; } if (obj.dataType == 'string') { content = obj.content; } else if (obj.dataType == 'number') { content = Number(obj.content); } else if (obj.dataType == 'boolean') { content = eval(obj.content); } else if (obj.dataType == 'object') { content = obj.content; } return content; } /** * delete localStorage */ export const removeStore = (params = {}) => {let {name, type} = params; name = keyName + name if (type) { window.sessionStorage.removeItem(name); } else { window.localStorage.removeItem(name); }} /** * export const getAllStore = (params = {}) => {let list = []; let { type } = params; if (type) { for (let i = 0; i <= window.sessionStorage.length; i++) { list.push({ name: window.sessionStorage.key(i), content: getStore({ name: window.sessionStorage.key(i), type: 'session' }) }) } } else { for (let i = 0; i <= window.localStorage.length; i++) { list.push({ name: window.localStorage.key(i), content: getStore({ name: window.localStorage.key(i), }) }) } } return list; } /** * export const clearStore = (params = {}) => {let {type} = params; if (type) { window.sessionStorage.clear(); } else { window.localStorage.clear() } }Copy the code

Set constants to define key values that need to be changed later. Only this file needs to be changed.

export default {
    storageUseInfoKey:'user_info'
}
Copy the code

Define separate methods to use, you can create methods according to your needs

import { getStore, removeStore, setStore } from '@/utils/local-storage' import constant from '.. /const/constant' export function getToken() { return getStore({ name: constant.storageUseInfoKey }) } export function setToken(token) { return setStore({ name: constant.storageUseInfoKey, content: token }) } export function removeToken() { return removeStore({ name: constant.storageUseInfoKey }) }Copy the code

Use in a file

import {
  getToken
} from '@/utils/auth'

const hasToken = getToken()
Copy the code