pouchdb-doc-api
v1.0.1
Published
PouchDB plugin for a document-bound API
Downloads
45
Readme
pouchdb-doc-api
PouchDB plugin for a document-bound API
Usage
var db = new PouchDB('mydb')
var docId = 'mydocid' // can be any valid do id
var api = db.doc(docId)
// creates or replaces existing document with _id: mydocid
api.set({foo: 'bar'})
.then(() => {
// loads document with _id: mydocid
return api.get()
})
.then((doc) => {
// removes document with _id: mydocid
return api.unset()
})
🔏📃 Security notice
In case you want to store sensitive data, be aware that PouchDB does not remove data but creates new revisions. The older revisions remain accessible.
The only exception to this are local documents
with an docId prefixed by _local/
. So say you want to store an API key or
session ID using pouchdb-doc-api
, I strongly recommend to us a docId like
_local/session
. Full usage example
var db = new PouchDB('mydb')
var api = db.doc('_local/session')
api.set
and api.unset
will no remove previously stored data without leaving
revisions that could be recovered.
API
Factory
Returns the store API bound to the document with the passed id
db.doc(id)
Example
var db = new PouchDB('mydb')
var store = db.doc('mydocid')
store.get()
Resolves with the document properties, without the _id
and _rev
properties.
store.get().then((properties) => {})
store.set()
Replaces all current document properties with the once passed. _id
and _rev
properties are ignored. Resolves with the document properties.
store.set({foo: 'bar'}).then((properties) => {})
store.unset()
Removes document from the database using PouchDB’s db.remove()
method. Resolves without arguments.
store.unset().then(() => {})