本地存储是对 localStorage 和 sessionStorage 的友好封装,可更方便地管理本地数据。
- localStorage 持久化存储:layui.data(table, settings),数据会永久存在,除非物理删除。
- sessionStorage 会话性存储:layui.sessionData(table, settings),页面关闭后即失效。注:layui 2.2.5 新增
上述两个方法的使用方式是完全一样的。其中参数 table 为表名,settings是一个对象,用于设置key、value
//【增】:向test表插入一个nickname字段,如果该表不存在,则自动建立。
layui.data('test', {
key: 'nickname'
,value: 'ABC'
});
//【删】:删除test表的nickname字段
layui.data('test', {
key: 'nickname'
,remove: true
});
layui.data('test', null); //删除test表
//【改】:同【增】,会覆盖已经存储的数据
//【查】:向test表读取全部的数据
var localTest = layui.data('test');
console.log(localTest.nickname); //获得“ABC”
示例操作
//简单操作
layui.data('cate', {
key: 'data'
,value: [{
key: 'id'
,value: 1
},{
key: 'name'
,value: 'abc'
}]
});
//取值
var cate = layui.data('cate');
console.log(cate.data)
//复杂操作
layui.data('cate', {
key: 'data',
value: [
{date: 'id', id: 1, content:'00000'}
,{date: 'id', id: 2, content:'11111'}
,{date: 'id', id: 3, content:'22222'}
,{date: 'id', id: 4, content:'33333'}
]
});
//追加数据
var cates = layui.data('cate').data;
cates.push({date: 'id', id: 5, content:'4444444'});
//移除数据
cates.splice(2,1);
//更新操作
layui.data('cate', {
key: 'data',
value: cates
});
console.info(layui.data('cate'));