2012-12-03 126 views

回答

4

我的JayData工作。这么晚才回复很抱歉。 在JayData中,我们有一个名为“本地”的“虚拟”提供程序。它隐藏了不同浏览器支持的不同本地存储技术,因此您不必担心它,并为IndexedDB,WebSQL和HTML5.localStorage编写代码。只写一次就可以了。

所有你需要做的是改变服务的参数,如:

var mydatabaseService = new mydatabase.mydatabaseService({ 
    name: 'local', 
    databaseName: 'myitems' 
}); 

有一些事情要小心: -string主键不支持(不JayData但由商店) 如果你想要导航属性,那么目前它只支持sqLite,所以你必须明确地使用它(name:'sqLite'而不是名字:'local'),并且在每个设备中都找不到sqlite。我们很快就会在其他商店实施导航。

+0

谢谢Gabor。我这样做了,但现在看起来并不奏效。我试图实例化一个本地上下文,并将它与从我的OData元数据自动生成的实体一起使用。它似乎只适用于oData上下文。 – Tolu

+0

我在回答之前就试过了,它能正常工作。你使用最新的JayData吗?控制台上有任何东西吗? –

+0

您是手动加载提供程序还是使用onReady()?如果手动添加必要的提供者,但我建议自动加载它。 –

3

在说明明显的风险:您可以创建自己的d.ts声明文件,或编辑你一直在使用一个或看是否有一个在这里:https://github.com/borisyankov/DefinitelyTyped

+0

这些d.ts文件是动态的 - 或者更准确地说,它们是特定于数据库的。 DefinitelyType不太可能找到它们。 jaydata.d.ts是另一个问题,在提交过程中,因为我们将为JayData提供d.ts,覆盖大部分功能,包括类型系统 –

+0

是的,公平 - 我只是想尽可能多地提供选项关于查找d.ts文件。 – JcFx