Skip to content
This repository has been archived by the owner on Apr 19, 2023. It is now read-only.
/ storage-web Public archive

🏝 web 端的 storage 操作,自动解析数据类型,支持 storage 过期时间设置

Notifications You must be signed in to change notification settings

chooin/storage-web

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

storage-web

Build Status JS gzip size npm package

对 web 端的 storage 操作,自动解析数据类型,支持 storage 过期时间设置,支持 Vue.js

目录

对比

设置参数类型 localStorage.getItem 获取到的类型 storage-web 获取到的类型
😃 Null 😃 Null
Number 😰 String 😃 Number
String 😃 String 😃 String
Object 😰 String 😃 Object
Array 😰 String 😃 Array
Boolean 😰 String 😃 Boolean
Undefined 😰 String 🤩 Null
Null 😰 String 😃 Null

安装

yarn add storage-web

默认参数

参数 说明 类型 可选值 默认值
use 使用的 storage 类型 String l/local/localStorage/s/session/sessionStorage local
pre 前缀 String - -
expire 过期时间,从当前开始 Number - -

基本使用

import storages from 'storage-web'

storages.set('store', {}, {
  use: 'session',
  pre: 'pre_',
  expire: 24 * 60 * 60 * 1000
})
// 或
storages.set('store', {}, {
  use: 'session'
})

在vue中使用

import storages from 'storage-web'

// 挂载到原型链上
Vue.prototype.$storage = storages

// Vue 中设置默认参数
this.$storage.defaults['use'] = 'local'
this.$storage.defaults['pre'] = 'pre_'
this.$storage.defaults['expire'] = 24 * 60 * 60 * 1000

// 用 this.$storage 代替 storages 即可,如:
this.$storage.get('store')

get

获取

import storages from 'storage-web'

storages.get('store') // localStorage

storages.get('store', { // sessionStorage
  use: 's'
})

storages.get('store', { // sessionStorage
  use: 'session'
})

storages.get('store', { // sessionStorage
  use: 'sessionStorage'
})

storages.get('store', { // sessionStorage name: pre_store
  use: 's',
  pre: 'pre_'
})

getOnce

获取即销毁

storages.getOnce('store') // 获取即销毁

set

设置

import storages from 'storage-web'

// 支持类型 String,Number,Boolean,Array,Object,Null,Undefined...
let storeValue = {
  store_id: 1,
  store_name: 'Tmall'
}

storages.set('store', storeValue, {
  use: 's',
  pre: 'pre_',
  expire: 24 * 60 * 60 * 1000
})

storages.set([
  {
    key: 'store',
    value: storeValue
  }
], {
  use: 's',
  pre: 'pre_',
  expire: 24 * 60 * 60 * 1000
})

remove

移除

import storages from 'storage-web'

storages.remove('store')

storages.remove(['store', 'token'])

clear

清空

import storages from 'storage-web'

storages.clear({ // 清空 localStorage 和 sessionStorage 下所有以 'pre_' 开头的
  pre: 'pre_'
})

storages.clear() // 清空所有 localStorage 和 sessionStorage

About

🏝 web 端的 storage 操作,自动解析数据类型,支持 storage 过期时间设置

Topics

Resources

Stars

Watchers

Forks

Packages

No packages published