Vue-ls

628 阅读1分钟

Vue-ls详解

Vue-ls 是 Vue 的一个插件,用于操作 Local Storage(本地存储)、Session Storage(会话存储)、Memory(内存存储)。

安装

NPM

npm install vue-ls --save

使用

import Storage from 'vue-ls'

// vue-ls 的配置
const storageOptions = {
    namespace: 'vue_',   // key 键的前缀(随便起)
  	name: 'ls',          // 变量名称(随便起) 使用方式:Vue.变量名称 或 this.$变量名称
  	storage: 'local'     // 作用范围:local、session、memory
}

Vue.use(Storage, storageOptions)
methods: {
    setKey () {
      this.$ls.set('name', 'cez')
    }
  }

image.png

image.png

Global

全局使用方式

Vue.ls

Context

上下文使用方式

this.$ls

API

Vue.ls.get (name, def)

作用:获取存储中的 key

name:要获取的 key;

def:默认为 null。如果 key 不存在,则返回 def。

methods: {
    getKey () {
      // age 和 age2 都不存在
      const age = this.$ls.get('age')
      const age2 = this.$ls.get('age2', 22)
      console.log(age)    // null
      console.log(age2)   // 22
    }
  }

Vue.ls.set (name, value, expire)

作用:设置一个 key,并且可以设置有效时间。

expire:默认为 null。name 的有效时间,单位为毫秒。

methods: {
    setKey () {
        this.$ls.set('age', 22)   // age 的有效时间为永久,除非自动清除
        this.$ls.set('name', 'cez', 3000)   // name 的有效时间为 3s,3s 后为 null
    }
}

Vue.ls.remove (name)

作用:从存储中删除某一个 key,成功返回 true,否则返回 false。

methods: {
    removeKey () {
        const age = this.$ls.remove('age')
        console.log(age)   // undefined:不管删除成功还是删除失败都会返回 undefined,和官方解析不一样,不知道为什么??
    }
}