@appstitch/database
v1.0.26
Published
App Stitch Client For Databases
Readme
Appstitch MongoDB
Serverless Mongo DB Integrations for Appstitch
Frameworks
- React
- React Native
Usage
Fetch one document
const getUser = async (id) => {
db.collection("users")
.id(id)
.get()
.then((result) => {
if (result.success) {
setUser(result.doc);
}
})
};Fetch multiple documents
const getUsers = () => {
db.collection("users")
.limit(5)
.get()
.then((result) => {
if (result.success) {
setUsers(result.docs);
}
})
};
Read Options
| Option | Type | Description | | ---------- | ---------------------------- | --------------------------------------------------------------------------------------------------- | | collection | String | Required. Collection name | | id | String | Return a specific document. Either 1 document is returned or null | | where | string, OperatorType, object | A query object used filter documents | | orderBy | string, object | A query object used filter documents | | include | String[] | Return specific document fields. The _id field is, by default, included in the output documents. | | exclude | String[] | Prevent specific document fields from being return. The _id field is, by default | | limit | number | Limits the number of documents. Default 50 returned | | startAfter | number | Skips the first n documents where n is the specified skip number and passes the remaining documents |
Create a document
const createUser = async () => {
const newUser = {
firstName: "Bruce",
lastName: "Banner",
email: "[email protected]",
dateOfBirth: new Date(1970, 12, 8),
};
db.collection("Users")
.insert(newUser)
.then((result) => {
if (result.success) {
setUser(result.doc);
}
})
};
Update a document
const updateUser = (id) => {
db.collection("users")
.id(id)
.update(
{
email: "[email protected]",
}
)
.then((result) => {
if(result.success)
{
// Deleted successfully
}
})
};Delete a document
const deleteUser = (id) => {
db.collection("users")
.id(id)
.delete()
.then((result) => {
if(result.success)
{
// Updated successfully
}
})
};
Write Options
| Option | Type | Description | | ---------- | ---------------------------- | ----------------------------------------------------------------- | | collection | String | Required. Collection name | | id | String | Writes to a specific document. Throws an error if document is not found | | where | string, OperatorType, object | A query object used filter documents |
Algolia Integration
The Algolia integration keeps your MongoDB & Algolia data in sync. The syncData option is available on all write operations (insert, update, delete).
Example
final result = await db
.collection("users")
.insert(user, {syncData: true})Install
npm i @appstitch/core @appstitch/types @appstitch/databaseInitialize
import appsticth from "@appstitch/core";
import database from "@appstitch/database";
const db = new database();
useEffect(() => {
appsticth.initialize({
clientID: "client",
appStitchKey:
"key",
});
}, []);