用于基本CRUD操作的本地电子解决方案

时间:2016-06-30 07:42:19

标签: javascript sql json database electron

我主要是一名RoR开发人员,我从未真正进入过JS,但最近我一直需要创建一个桌面应用程序,因此我一直在关注Electron。 我一直在努力研究如何让这个完全保持本地化,即使程序写入文本文件,或类似JSON文件。

任何人都可以建议我如何解决这个问题,我已经看过一些关于如何启动Electron的教程,但我需要的只是一个简单的查找应用程序,可以创建,删除和编辑。 感谢

1 个答案:

答案 0 :(得分:1)

您需要的是嵌入式数据库。 Electron有一些内置选项可供选择。 LocalStorage(没有你在chrome中找到的大小限制),WebSql和IndexedDb。

每个数据库都有其优点。 LocalStorage有一个非常简单的API但是非常有限,而IndexedDb非常强大,但它有一个相当复杂的API。

我建议使用一些抽象这些数据库的库。

我个人喜欢PouchDb。如果您想要同步功能,这是有意义的。

我还推荐Nolan Lawson blog,他写了关于数据库和JS的东西。 This post特别有用。 PouchDb使用indexedDb作为默认存储层。

LocalForage是另一个不错的选择,也是Dixie.js

在我的情况下,我使用带有主干的Pouchdb。我用PouchDb适配器替换了Backbone.sync方法,这样我就可以像使用普通的javascript应用程序一样使用Backbone模型。