如何使Ember.js应用程序在可用时与服务器同步脱机

时间:2012-12-27 21:30:15

标签: html5 ember.js offline breeze

有没有处理这个的库?比如backbone.offline一个?如果没有,这会难以用Ember.js实现吗?

更新

这个question有两个可以提供帮助的库,Breeze.js和Jaydata ..

3 个答案:

答案 0 :(得分:4)

ember-localstorage适配器可以使用。

它可以像其他适配器一样使用。

App.store = DS.Store.create({
  revision: 11,
  adapter: DS.LSAdapter.create()
});

另一个好的ember和rails库是ember-data-sync.js

从DS.SyncStore扩展您的App.Store。定义要用于客户端存储的适配器:

App.Store = DS.SyncStore.extend({
      revision: 10,
      adapter: DS.IndexedDB.adapter({
        mappings: {
          person: App.Person,
          persons: App.Person,
          contact: App.Contact,
          contacts: App.Contact
        }
      })

});

答案 1 :(得分:3)

没有用于此的库,但您可以使用自定义适配器实现它。适配器API的文档不多,到目前为止,核心中唯一可用的文档是RESTAdapterFixtureAdapter

你基本上需要做的是实现几个钩子并将其插入应用程序的商店。

答案 2 :(得分:1)

也在寻找解决方案,并参与了ember-sync项目。

这个项目背靠Ember-Data,ember-cli准备就绪,并且具有排队功能,能够巧妙地处理后端记录CRUD。从我的简要介绍来看,我说这是Ember.js离线应用程序的主要项目。

我在这个项目上提交的一个批评是,它应该也能够适应epf.io,它本身就是Ember-Data的替代品,并提供交易CRUD,嵌套商店 - 甚至是每个模型的嵌套商店功能。

在撰写本文时,这个项目仍处于alpha状态,但它似乎朝着正确的方向发展。