首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让JSData将实例属性保存到localStorage

如何让JSData将实例属性保存到localStorage
EN

Stack Overflow用户
提问于 2016-08-23 19:57:25
回答 1查看 99关注 0票数 0

如何让JSData更新保存到localStorage的修改后的对象?

下面的代码将一个Tree对象和两个苹果保存在一个容器对象中。现在,按照in the docs here的说法,更新该容器并将其保存“混合到现有实例中”。

问:如何防止这种混合行为,使对象在保存后只包含一个苹果?

Plunker

代码语言:javascript
复制
var adapter = new DSLocalStorageAdapter();
var store = new JSData.DS();
store.registerAdapter('localstorage', adapter, { default: true });

var Tree = store.defineResource('tree');

Tree.create({
  id: 1,
  apples: {1: 'one', 2: 'two'}
}).then(function(tree){
  tree.apples = {1: 'one'}
  tree.DSSave().then(function(tree){
    console.log(tree.apples) // 
  })
});
EN

回答 1

Stack Overflow用户

发布于 2016-08-24 02:25:55

您正在寻找缺省为"merge"onConflict选项。

这应该可以做到:

代码语言:javascript
复制
tree.apples = {1: 'one', 2: null};
tree.DSSave({ onConflict: 'replace' })
  .then(function (tree){
    console.log(tree.apples);
  });

2.x:http://www.js-data.io/v2.9/docs/dsdefaults#onconflict

3.x:http://api.js-data.io/js-data/latest/Collection.html#onConflict

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39100529

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档