nativescript-cblite-xl
插件,允许在 NativeScript 应用程序中使用 coubbase-lite-android 库
npm i --save nativescript-cblite-xl

描述

CbLiteXl 是一个插件,允许访问 couchbaselite 库。目前,该插件仅适用于 Android。然而,我们计划实现 iOS 版本。

安装

要安装该插件,请从您的 NativeScript 项目的根目录运行以下命令 tns plugin add nativescript-cblite-xl

如何使用

以下是一些使用此插件的方法示例

导入

要在您的代码中使用此插件,您可以像这样导入它

import { CbliteXl } from "nativescript-cblite-xl";

为了使用此插件允许的所有选项,您可以像这样导入所需的所有内容

import {
CbliteXl,
SelectResult,
Meta,
Expression,
QueryBuilder,
DataSource,
Ordering
} from "nativescript-cblite-xl";

实例化和数据库创建

您可以通过以下方式实例化库并创建数据库

this.cbliteXl = new CbliteXl("testdatabase");

创建文档

    let tour = {
type: "tour",
data: { begin: 100000, end: 200000, id: 3, nested: { attr: 5 } }
};

let documentId = this.cbliteXl.createDocument(tour);
console.log("This is your documentId", documentId);

获取文档

    let tour = his.cbliteXl.getDocument(documentId);

console.log("This is your document", tour);

更新文档

    let tour = this.cbliteXl.getDocument(documentId);
tour.data.nested.attr = 6;

this.cbliteXl.updateDocument(tour);

删除文档

this.cbliteXl.deleteDocument(documentId);

查询

    let query = QueryBuilder.select([SelectResult.all()])
.from(DataSource.database(this.cbliteXl.getDatabase()))
.where(
Expression.property("type")
.equalTo(Expression.string("tour"))
.and(Expression.property("data.id").lessThanOrEqualTo(Expression.intValue(18)))
.and(
Expression.property("data.nested.attr").equalTo(
Expression.intValue(24)
)
)
)
.orderBy([Ordering.property("data.id").descending()])
.limit(Expression.intValue(1));

const results = this.cbliteXl.getAll(query);

results.forEach((result) => {
console.log('Result', result);
});

进一步了解

有关如何使用此插件使用 couchbase-lite 的更多信息,您可以在以下位置阅读库文档:https://docs.couchbase.com/couchbase-lite/2.1/java.html#getting-started