@corelink/db
TypeScript icon, indicating that this package has built-in type declarations

0.4.1 • Public • Published

Build Status Coverage Status MIT license

Typeorm 相关工具

list

从数据库中列出数据

定义

/**
 * 列出表数据
 * @param repo Typeorm 的 Repository
 * @param listOptions 列表配置
 * @param paginate 分页配置(默认第1页,默示10条)
 */
export async function list<T>(
  repo: Repository<T>,
  listOptions: FindManyOptions<T> = {},
  paginate: IPaginateOptions = { limit: 10, page: 1 },
): Promise<IListResult<T>>

export interface IPaginateOptions {
  /**
   * 每显示条数
   */
  limit: number;

  /**
   * 显示的页数角标
   */
  page: number;
}

export interface IPaginateResult extends IPaginateOptions {
  /**
   * 总页数
   */
  pages: number;

  /**
   * 总条数
   */
  total: number;
}

export interface IListResult<T> extends IPaginateResult {
  /**
   * 数据列表
   */
  docs: T[];
}

使用方法

默认配置列出(不过滤,列出第1页,每页10条。)

import { list } from '@corelink/db';

const up = connection.getRepository(User);
const res = await list(up);

只列出男孩

import { list } from '@corelink/db';

const up = connection.getRepository(User);
const res = await list(up, { where: { gender: 1 } });

每页1条,列出第2页

import { list } from '@corelink/db';

const up = connection.getRepository(User);
const res = await list(up, {}, { limit: 1, page: 2 });

更多例子请参考__tests__目录下的list-spec.ts

parseFunctions

将前端的特定参数转成FindOperator类型

定义

/**
 * 
 * @param where 前端传进的where对象
 * @param functionNames 需要生成的方法列表
 */
export function parseFunctions(where: any, ...functionNames: FUNCTION_NAME[]): any

使用方法

const where = { a: '$IsNull()$' };
parseFunctions(where, FUNCTION_NAME.IsNull);

Readme

Keywords

none

Package Sidebar

Install

npm i @corelink/db

Weekly Downloads

2

Version

0.4.1

License

MIT

Unpacked Size

23.3 kB

Total Files

11

Last publish

Collaborators

  • jing.zhou
  • tmztliusf
  • kuyoonjo