我使用的骨干+ backbone.localStorage坚持我的数据,我也得到一个错误的行为:
我有一个属性,叫做用户模式设置
Settings = Backbone.Model.extend({
localStorage : new Backbone.LocalStorage('settingsStore')
});
var settings = new Settings();
settings.set({user: 'USERNAME'});
settings.save();
此代码后,如果我输出weinre的settings.attributes数据,我得到以下几点:
settings.attributes
Object
id: "3ac78cfb-ad60-1ab8-8391-f058ae9bfcfb"
user: "USERNAME"
__proto__: Object
然后,我的模型保存到本地存储,清晰,并再次获取它:
settings.save();
settings.clear();
settings.fetch();
而问题是,如果我输出的settings.attributes,现在这个属性被存储在一个嵌套的对象中:
settings.attributes
Object
0: Object
id: "3ac78cfb-ad60-1ab8-8391-f058ae9bfcfb"
user: "USERNAME"
__proto__: Object
__proto__: Object
而问题是,当我为了再次修改设置的用户名,一个新的属性添加如下:
settings.attributes
Object
0: Object
id: "3ac78cfb-ad60-1ab8-8391-f058ae9bfcfb"
user: "USERNAME"
__proto__: Object
user: "NEWUSER"
__proto__: Object
如果我保存这个模型,把它拿来,我再次得到属性2个新对象...,是它让每一次成长。