cloudant-upsert
A no-dependency module that adds an
upsert
function to the nodejs-cloudant module.
Install
npm install cloudant-upsert
Usage
The following adds theupsert
function to a cloudant
instancevar Cloudant = require('@cloudant/cloudant');
var cloudant = Cloudant('<YOUR_CLOUDANT_URI>');
require('cloudant-upsert')(cloudant);
Examples
Promises
In the example belowprevdoc
contains null
or the previous doccloudant.db.use('mydb').upsert('carmine', prevdoc => ({
"text": "Woop Woop! We're using promises",
}))
.then(r => console.log('result', r))
.catch(e => console.log('error', e.message));
Callbacks
In the example belowprevdoc
contains null
or the previous doccloudant.db.use('mydb').upsert('carmine', prevdoc => ({
"text": "Woop! Woop! We're using callbacks"
}), (err, data) => {
if (err) console.log('error', err.reason)
else console.log('data', data)
})
API
Promise API
upsert(id, function(prevdoc)
)
| param | description |
| ------------- | ------------- |
| id
| The document id to upsert |
| function(prevdoc): doc
| A function that provides the previous document (or null when inserting a new doc) as input. You must return the document to upsert. |Callback API
upsert(id, function(prevdoc), function(err, res)}
| param | description |
| ------------- | ------------- |
| id
| The document id to upsert |
| function(prevdoc): doc
| A function that provides the previous document (or null when inserting a new doc) and returns a new document to upsert |
| function(err, res): void
| A Node.js error first callback |