CocosCreator本地储存 - cc.sys.localStorage

在CocosCreator中,本地储存我们常用cc.sys.localStorage来完成。

其提供了三种常用方法:

  1. cc.sys.localStorage.setItem(key, value)
  2. cc.sys.localStorage.getItem(key)
  3. cc.sys.localStorage.removeItem(key)

存储#

1
2
3
4
5
6
7
let data = {
name: 'Danny',
score: 100,
parent: 'Bob'
};

cc.sys.localStorage.setItem('data', JSON.stringify(userData));

对象数据,需要通过将对象序列化为 JSON 后保存。

setItem仅能保存字符,像bool和对象之类的,都先转化为字符串后再储存。

加密问题:可以通过将JSON加密后再使用setItem去储存。

读取#

1
2
let data = JSON.parse(cc.sys.localStorage.getItem('data'));
let obj = JSON.parse(data);

通过getItem,使用key值直接使用获取就行了。

删除#

1
cc.sys.localStorage.removeItem(key)

这样一个简单的增删查就完成了。

存储方式#

  • Web

cc.sys.localStorage 接口是按照 Web Storage API 来实现的,在 Web 平台运行时会直接调用 Web Storage API

  • Native

Cocos会在App内嵌一个SQLitecc.sys.localStorage 实际上是将数据存储在这个SQLite中。

扩展#

在实际运用中,cc.sys.localStorage 显得有些单调,所以推荐对其进行一层封住,比如自动处理对象和bool值,避免储存错误的情况等等,或者设计自动释放,避免数据库内容冗余之类的。

MD5

Comentarios

Your browser is out-of-date!

Update your browser to view this website correctly. Update my browser now

×