当前位置: 首页>>代码示例>>TypeScript>>正文


TypeScript lowdb.default方法代码示例

本文整理汇总了TypeScript中lowdb.default方法的典型用法代码示例。如果您正苦于以下问题:TypeScript lowdb.default方法的具体用法?TypeScript lowdb.default怎么用?TypeScript lowdb.default使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在lowdb的用法示例。


在下文中一共展示了lowdb.default方法的5个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的TypeScript代码示例。

示例1: async

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();
};
开发者ID:csrakowski,项目名称:DefinitelyTyped,代码行数:53,代码来源:lowdb-tests.ts

示例2: async

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();
};
开发者ID:Batbold-Gansukh,项目名称:DefinitelyTyped,代码行数:52,代码来源:lowdb-tests.ts

示例3: 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")
开发者ID:csrakowski,项目名称:DefinitelyTyped,代码行数:31,代码来源:lowdb-tests.ts

示例4: FileSync

import * as low from "lowdb";
import * as lowfp from "lowdb/lib/fp";
import * as FileSync from "lowdb/adapters/FileSync";
import * as FileAsync from "lowdb/adapters/FileAsync";
import * as LocalStorage from "lowdb/adapters/LocalStorage";

const adapterSync: low.AdapterSync<{}> = new FileSync("db.json");
const adapterAsync: low.AdapterAsync<{}> = new FileAsync("db.json");
const db = low<DbSchema, typeof adapterSync>(adapterSync);

const write: DbSchema = db.defaults({ posts: [] }).write();

const result: Post[] = db
  .get("posts")
  .push({ title: "hello", views: 123 })
  .value();

const teste = db.get("user").value();
const post: Post | undefined = db
  .get("posts")
  .find({ id: 123 })
  .value();

// $ExpectError
const postAssertWithUndefined: Post = db
  .get("posts")
  .find({ id: 123 })
  .value();

// $ExpectError
const postAssertWithUndefined2: Post = db
开发者ID:Batbold-Gansukh,项目名称:DefinitelyTyped,代码行数:31,代码来源:lowdb-tests.ts

示例5: FileSync

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();
}
开发者ID:kentongray,项目名称:rollout-server,代码行数:25,代码来源:Database.ts


注:本文中的lowdb.default方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。