Almacenamiento local Almacenamiento

importar {validatenull} desde '@ / util / validate';
importar sitio web desde '@ / config / website'

const keyName = website.key + '-';

/ **
 * Almacenamiento local Almacenamiento
 * /
// El token existe en localStorage, y el contenido del contenido existe en sessionStorage
export const setStore = (params = {}) => {
  let {nombre, contenido, tipo,} = params;
  nombre = nombre clave + nombre
  let obj = {
    dataType: typeof (contenido),
    contenido: contenido,
    tipo: tipo,
    datetime: new Date (). getTime ()
  }
  if (tipo) window.sessionStorage.setItem (nombre, JSON.stringify (obj));
  else window.localStorage.setItem (nombre, JSON.stringify (obj));
}

/ **
 * Obtener localStorage
 * /
export const getStore = (params = {}) => {
  let {name, debug} = params;
  nombre = nombre clave + nombre
  dejar obj = {},
    contenido;
  obj = window.sessionStorage.getItem (nombre);
  if (validatenull (obj)) obj = window.localStorage.getItem (nombre);
  if (validatenull (obj)) devuelve;
  tratar {
    obj = JSON.parse (obj);
  } captura {
    volver obj;
  }
  if (depuración) {
    volver obj;
  }
  if (obj.dataType == 'cadena') {
    content = obj.content;
  } else if (obj.dataType == 'número') {
    content = Number (obj.content);
  } else if (obj.dataType == 'boolean') {
    contenido = eval (obj.content);
  } else if (obj.dataType == 'objeto') {
    content = obj.content;
  }
  devolver contenido;
}

/ **
 * Eliminar localStorage
 * /
export const removeStore = (params = {}) => {
  let {nombre, tipo} = params;
  nombre = nombre clave + nombre
  if (tipo) {
    window.sessionStorage.removeItem (nombre);
  } más {
    window.localStorage.removeItem (nombre);
  }

}

/ **
 * Obtenga todo el almacenamiento local
 * /
export const getAllStore = (params = {}) => {
  let list = [];
  dejar {
    tipo
  } = params;
  if (tipo) {
    for (let i = 0; i <= window.sessionStorage.length; i ++) {
      list.push ({
        nombre: window.sessionStorage.key (i),
        contenido: getStore ({
          nombre: window.sessionStorage.key (i),
          tipo: 'sesión'
        })
      })
    }
  } más {
    for (let i = 0; i <= window.localStorage.length; i ++) {
      list.push ({
        nombre: window.localStorage.key (i),
        contenido: getStore ({
          nombre: window.localStorage.key (i),
        })
      })

    }
  }
  lista de retorno;

}

/ **
 * Borrar todo el almacenamiento local
 * /
export const clearStore = (params = {}) => {
  let {type} = params;
  if (tipo) {
    window.sessionStorage.clear ();
  } más {
    window.localStorage.clear ()
  }

}

Supongo que te gusta

Origin www.cnblogs.com/xiaoxiao95/p/12744067.html
Recomendado
Clasificación