开源地址:https://github.com/wdwlrz/localStorageManager.js
demo:
let ls = new localStorageManager(); // 会在localStorage里自动创建个key为storageList的数据,用来维护其它key的信息
ls.data; // localStorage里的数据,自动更新,但都是经过格式化后的,自动识别对象、数组
ls.originData; // localStorage里的数据,字符串类型原始数据
ls.set(key,value); // localStorage.setItem(); 可以直接传递对象、数组,可自动处理。
ls.get(key,needParse_or_Options); // localStorage.getItem(); needParse_or_Options不是必须的,具体的配置可以看源码,但正常不用传这个参数。
ls.del(key); // localStorage.removeItem();
ls.clear(); // localStorage.clear();
ls.initData(force=false); // 手动更新ls.data,force为true时,会重新初始化data,false时只更新storageList中维护的数据,一般非手工在开发者工具里更改的数据都会在storageList中,如果手动篡改过数据,force可以重建storageList;
let app=new Vue({
el:'#app',
data:{
storageData:ls.data // 当localStorage里数据改变时(非手工在开发者工具里篡改,可以ls.set或者localStorage.setItem),ls.data会自动更新数据,因为ls.data是对象是引用传递,所以vue这里可以立即监听到改变,比如{{storageData.name}}会变化
}
})