一个简单易用的mock工具库——mokia
发布于 5 年前 作者 varHarrie 3072 次浏览 来自 分享

Mokia

仓库地址

一个集成了数据模拟和HTTP服务的Mock工具。

特性

  • 🤟 简单易用
  • 🔄 模型可复用
  • 💎 支持TypeScript

安装

$ npm install mokia --save-dev
# 或者
$ yarn add mokia --dev

基本用法

  1. 添加一个文件,比如“mock.ts”:
import { mock, PORT, ServerConfig } from 'mokia'

const config: ServerConfig = {
  [PORT]: 3000,
  'GET /users': () => {
    return {
      users: mock.array({
        id: mock.uuid(),
        name: mock.fullName()
      }, 0, 5)
    }
  },
  'GET /users/:id': () => {
    return {
      id: mock.uuid(),
      name: mock.fullName()
    }
  }
}

export default config
  1. 运行脚本启动服务器:
$ npx mokia mock.ts

进阶用法

为了较少重复代码和保持代码复用性,我们推荐使用JS类风格书写:

import { decorators, mock, PORT, ServerConfig } from 'mokia'

class User {
  decorators.uuid()
  id: string

  decorators.fullName()
  name: string
}

const config: ServerConfig = {
  [PORT]: 3000,
  'GET /users': () => {
    return {
      users: mock.array(User, 0, 5)
    }
  },
  'GET /users/:id': () => {
    return mock(User)
  }
}

export default config

APIs

服务器配置参数:

  • HOST 服务器主机,默认为'localhost'
  • PORT 服务器端口号,默认为8080
  • PREFIX URL前缀,默认为''
  • SILENT 是否隐藏请求日志,默认为false

注意:这些参数传入时都不是字符串,而是Symbol,你应该从mokia包中引入。

import { PORT } from 'mokia'

export default {
  [HOST]: 'localhost',
  [PORT]: 3000,
  [PREFIX]: '/apis',
  [SILENT]: true,
  // ...
}

随机生成器

[已支持生成器列表](https://github.com/varHarrie/mokia/blob/master/README.zh-cn.md#%E7%94%9F%E6%88%90%E5%99%A8)
1 回复
回到顶部