查看: 3069|回复: 6

[有事请教] 请教一个关于indexdDB数据库的问题(已解决)

[复制链接]
梦石
0
星屑
2381
在线时间
169 小时
注册时间
2017-4-25
回帖
185
发表于 2021-5-29 19:49:52 | 显示全部楼层 |阅读模式

加入我们,或者,欢迎回来。

您需要 登录 才可以下载或查看,没有账号?注册会员

×
本帖最后由 rexuegg123 于 2021-5-30 06:36 编辑

最近尝试用indexDB数据库存储MV的数据,但发现一个问题:就是用indexDB数据库存取对象后,对象的方法丢失的问题……
比如:suna1 = new suna ();   //suna 是已定义好的原型对象,里面包含若干属性及方法
当用indexdDB 存储并重新读取后,suna1从suna继承的方法已不可用
有没大神知道怎么回事,或者要让suna1保留suna原型上的方法该怎么办?


问题已解决……用读取后的对象,如suna1重新链接suna原型的方法:
suna1.__proto__ = suna.prototype
梦石
1
星屑
24088
在线时间
3339 小时
注册时间
2011-7-8
回帖
3862

开拓者

发表于 2021-5-29 20:41:07 | 显示全部楼层
可以曲线救国,数据库只存数据,读取的时候先创建新的对象,然后把数据写入到这个对象里
熟悉rgss和ruby,xp区版主~
正在填坑:《膜拜组传奇》讲述膜拜组和学霸们的故事。
已上steam:与TXBD合作的Reformers《变革者》
* 战斗调用公共事件 *
* RGSOS 网络脚本 *
回复

使用道具 举报

梦石
0
星屑
2381
在线时间
169 小时
注册时间
2017-4-25
回帖
185
 楼主| 发表于 2021-5-29 22:35:19 | 显示全部楼层
guoxiaomi 发表于 2021-5-29 20:41
可以曲线救国,数据库只存数据,读取的时候先创建新的对象,然后把数据写入到这个对象里 ...

是一个办法。但有没有办法在读取之后,重新为它链接上原来的原型呢?
比如,将原型方法 call(this) ??
回复

使用道具 举报

梦石
0
星屑
3486
在线时间
294 小时
注册时间
2020-1-27
回帖
180
发表于 2021-5-29 23:20:45 | 显示全部楼层
rexuegg123 发表于 2021-5-29 22:35
是一个办法。但有没有办法在读取之后,重新为它链接上原来的原型呢?
比如,将原型方法 call(this) ?? ...

看看 mv 的 JsonEx 是带类序列化的.

就是游戏存档用的那个

点评

然后 IndexedDB 存 JsonEx 生成的字符串, 读取的时候同样反序列化.  发表于 2021-5-29 23:23
不过我肯定, 会有很多奇怪的类是不兼容的.  发表于 2021-5-29 23:21
回复

使用道具 举报

梦石
0
星屑
2381
在线时间
169 小时
注册时间
2017-4-25
回帖
185
 楼主| 发表于 2021-5-30 06:34:29 | 显示全部楼层
zths 发表于 2021-5-29 23:20
看看 mv 的 JsonEx 是带类序列化的.

就是游戏存档用的那个

问题已解决……
用读取后的对象如suna1重新链接suna原型的方法:suna1.__proto__ = suna.prototype
感谢提供思路!

评分

参与人数 1赞 +1 收起 理由
guoxiaomi + 1 塞糖

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部