Pouchdb 简明教程
PouchDB - Delete Document
你可以使用 db.remove() 方法从 PouchDB 中存在的数据库中删除文档。
Syntax
以下是使用 PouchDB 的 db.remove() 方法的语法。对于此方法,我们必须传递 id 和 _rev 来删除现有文档,如下面的代码所示。此方法接受可选的回调函数。我们还可以传递完整文档,而不是 id 和 _rev。
db. get ( docId, docRev, [callback] )
or
db. get ( docId, docRev, [callback] )
Example
假设我们在 PouchDB 中有一个 id 为 001 的文档,其中包含一个人的详细信息。为了删除这个文档及其 id ,我们还应该有其 _rev 编号。因此,请按照以下代码所示检索文档的内容。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_database');
//Reading the contents of a Document
db.get('001', function(err, doc) {
if (err) {
return console.log(err);
} else {
console.log(doc);
}
});
执行上述代码会得到以下输出。
{
_id: '001',
_rev: '3-552920d1ca372986fad7b996ce365f5d',
name: 'Raju',
age: 23,
designation: 'Designer'
}
现在,您可以使用前面记录的 _rev 和文档的 ID,再借助 remove() 方法来删除文档,具体如以下代码所示。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('my_database');
//Deleting an existing document
db.remove('001', '3-552920d1ca372986fad7b996ce365f5d', function(err) {
if (err) {
return console.log(err);
} else {
console.log("Document deleted successfully");
}
});
将上述代码另存为名为 Delete_Document.js 的文件。打开命令提示符,再使用 node 执行 JavaScript 文件,具体如下。
C:\PouchDB_Examples >node Delete_Document.js
此操作会删除本地存储的,名为 my_database 数据库中的指定文档的内容。还会显示以下消息。
Document deleted successfully
Deleting a Document from a Remote Database
您还可以从服务器(CouchDB)远程存储的数据库中删除现有文档。
要执行此操作,您需要传入 CouchDB 中的数据库路径而不是数据库名称,该路径包含要读取的文档。
Example
假设 CouchDB 服务器中有一个名为 my_database 的数据库。然后,如果您使用 URL http://127.0.0.1:5984/_utils/index.html 验证 CouchDB 中的数据库列表,您将获得以下屏幕截图。
通过单击名为 my_database 的数据库,您可以看到以下屏幕截图。此处您可以看到数据库中包含 ID 为 001 的文档。
以下是一个示例:删除存储在 CouchDB 服务器上的,名为 my_database 的数据库中,ID 为“ 001 ”的文档的内容。
//Requiring the package
var PouchDB = require('PouchDB');
//Creating the database object
var db = new PouchDB('http://localhost:5984/my_database');
//Deleting an existing document
db.remove('001', '3-552920d1ca372986fad7b996ce365f5d', function(err) {
if (err) {
return console.log(err);
} else {
console.log("Document deleted successfully");
}
});
将上述代码另存为名为 Remote_Delete_Document.js 的文件。打开命令提示符,再使用 node 执行 JavaScript 文件,具体如下。
C:\PouchDB_Examples >node Remote_Delete_Document.js
此操作会删除存储在 CouchDB 中的,名为 my_database 数据库中的指定文档。还会显示以下消息。
Document deleted successfully