0.4.1 • Published 5 years ago

@corelink/db v0.4.1

Weekly downloads
-
License
MIT
Repository
-
Last release
5 years ago

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);
0.4.1

5 years ago

0.4.0

5 years ago

0.3.0

6 years ago

0.2.0

6 years ago

0.1.1

6 years ago

0.1.0

6 years ago