本文整理匯總了TypeScript中lowdb類的典型用法代碼示例。如果您正苦於以下問題:TypeScript lowdb類的具體用法?TypeScript lowdb怎麽用?TypeScript lowdb使用的例子?那麽, 這裏精選的類代碼示例或許可以為您提供幫助。
在下文中一共展示了lowdb類的4個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的TypeScript代碼示例。
示例1: low
import * as low from "lowdb";
import * as lowfp from "lowdb/lib/fp";
import * as Base from "lowdb/adapters/Base";
import * as FileSync from "lowdb/adapters/FileSync";
import * as FileAsync from "lowdb/adapters/FileAsync";
import * as LocalStorage from "lowdb/adapters/LocalStorage";
import { find, filter, random, concat, sortBy, take, set } from "lodash/fp";
const adapterSync = new FileSync<DbSchema>("db.json");
const adapterAsync = new FileAsync<DbSchema>("db.json");
const db = low(adapterSync);
const write: DbSchema = db.defaults({ posts: [] }).write();
const result: ArrayLike<Post> = db
.get("posts")
.push({ title: "hello", views: 123 })
.value();
// $ExpectType Post
db.get("posts")
.find({ id: 123 })
.value();
// $ExpectType Post & Promise<Post>
db.get("posts")
.find({ id: 123 })
.write();
low(adapterAsync).then(dbAsync => {
const writeAction: Promise<Post> = dbAsync
.get("posts")
示例2: getNotifications
import {Notification} from "./Notifications";
import * as low from 'lowdb';
import * as FileSync from 'lowdb/adapters/FileSync';
import * as shortid from 'shortid';
const adapter = new FileSync('houstonDb.json');
const db:any = low(adapter);
db.defaults({notifications: [], holidays: []}).write();
export function getNotifications(): Notification[] {
return db.get('notifications').value();
}
export function getNotificationById(id:String): Notification[] {
return db.get('notifications').getById(id);
}
export function addNotification(notification: Notification): void {
db.get('notifications').push({...notification, id: shortid.generate()}).write();
}
export function removeNotification(id:String): void {
db.get('notifications').remove({id}).write();
}
示例3: FileSync
async () => {
const adapterSync: low.AdapterSync<ExampleSchema> = new FileSync("db.json", {
defaultValue: {
posts: [{ name: "baz" }]
}
});
const adapterAsync: low.AdapterAsync<ExampleSchema> = new FileAsync(
"db.json",
{
defaultValue: {
posts: [{ name: "baz" }]
}
}
);
const dbSync = low(adapterSync);
const dbAsync = await low(adapterAsync);
// $ExpectType LowdbSync<ExampleSchema>
dbSync;
// $ExpectType LowdbAsync<ExampleSchema>
dbAsync;
const xSync: ExampleSchema = dbSync
.defaults({ posts: [{ name: "baz" }] })
.write();
const xAsync: Promise<ExampleSchema> = dbAsync
.defaults({ posts: [{ name: "baz" }] })
.write();
const result: ArrayLike<{ name: string }> & Promise<ArrayLike<{ name: string }>> = dbAsync
.get("posts")
.push({ name: "hello" })
.write();
const resultSync: ArrayLike<{ name: string }> & Promise<ArrayLike<{ name: string }>> = dbSync
.get("posts")
.push({ name: "hello" })
.write();
const otherAdapterAsync = new FileAsync<OtherSchema>("db.json");
const dbPromise = low(otherAdapterAsync);
const db = await dbPromise;
const nested: OtherSchema["nested"] = db.get("nested").value();
const result2: Promise<OtherSchema["nested"]["x"]> = db
.get("nested")
.get("x")
.write();
};
示例4: FileSync
async () => {
const adapterSync: low.AdapterSync<ExampleSchema> = new FileSync("db.json", {
defaultValue: {
posts: [{ name: "baz" }]
}
});
const adapterAsync: low.AdapterAsync<ExampleSchema> = new FileAsync(
"db.json",
{
defaultValue: {
posts: [{ name: "baz" }]
}
}
);
const dbSync = low(adapterSync);
const dbAsync = await low(adapterAsync);
const dbAssertTypeSync: low.Lowdb<ExampleSchema, typeof adapterSync> = dbSync;
const dbAssertTypeAsync: low.Lowdb<
ExampleSchema,
typeof adapterAsync
> = dbAsync;
const xSync: ExampleSchema = dbSync
.defaults({ posts: [{ name: "baz" }] })
.write();
const xAsync: Promise<ExampleSchema> = dbAsync
.defaults({ posts: [{ name: "baz" }] })
.write();
const result: Promise<ExampleSchema["posts"]> = dbAsync
.get("posts")
.push({ name: "hello" })
.write();
const resultSync: ExampleSchema["posts"] = dbSync
.get("posts")
.push({ name: "hello" })
.write();
const dbPromise = low<OtherSchema, typeof adapterAsync>(adapterAsync);
const db = await dbPromise;
const nested: OtherSchema["nested"] = db.get("nested").value();
const result2: Promise<OtherSchema["nested"]["x"]> = db
.get("nested")
.get("x")
.write();
};