sencha 2.0 基于HTML5的sessionstorage的使用

本文介绍如何在 Sencha 2.0 中利用 HTML5 的 SessionStorage 功能进行数据存储。主要内容包括定义存储模型和存储实例、保存及加载会话数据的方法,以及如何清除 SessionStorage 中的数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

      sencha 2.0 支持html5的sessionstorage ,

      定义sessionstorage:使用起来,就像普通的store一样,先define一个model,并给与id,(这样做是为了下一次读取session时,定义一个model,也使用这个id,就取到这个model的值了),并且feild里面也要定义个id的字段,(这样做,是为了add一个session的值的时候,通过这个id辨认不同的session组)

      然后定义store,使用add方法,如:add({id:'user',name:'chris',password:'123'}); id为这个session组的识别,最后还要sync()或者save()同步这个store;

Ext.define('User', {
	extend: 'Ext.data.Model',
	config: {
		fields: ['id','name','address','kt', 'password'],
		proxy: {
			type: 'sessionstorage',
			id  : 'my-ProxyKey'
		}
	}
});
var session = Ext.create('User', 
	{'id'		: 'user',
	'kt'		: result.kt,
	'password'	: result.password,
	'name'		: result.name,
	'address'	: result.address});
session.save();


     获取sessionstorage:和定义它一样,要定义一个model,store,当然model里的proxy :id 要和定义时的一样

Ext.define('User', {
	extend: 'Ext.data.Model',
	config: {
		fields: ['id','name','address','kt', 'password'],
		proxy: {
			type: 'sessionstorage',
			id  : 'my-ProxyKey'
		}
	}
});
var session = Ext.create('Ext.data.Store',{
	model: 'User',
});
session.load();
console.log(session.getById('user').getData());

console.log出来的是一个对象object。


删除sessionstorage:和定义它一样,定义model,store,使用removeAll()把session清空,或者设置这个id的其他值为空:

Ext.define('User', {
	extend: 'Ext.data.Model',
	config: {
		fields: ['id','name','address','kt', 'password'],
		proxy: {
			type: 'sessionstorage',
			id  : 'my-ProxyKey'
		}
	}
});
var session = Ext.create('Ext.data.Store',{
	model: 'User',
});
session.load();
session.removeAll();
/*var session = Ext.create('User', 
	{'id'		: 'user',
	'kt'		: '',
	'password'	: '',
	'name'		: '',
	'address'	: ''});
session.save();*/

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值