# mock 方案对比

# 1. 代码侵入(直接在代码中写死 mock 数据,或者请求本地的 JSON 文件)

  • 优点 :无
  • 缺点 :
  1. 和其它方案比 Mock 效果不好
  2. 与真实 Server 环境的切换非常麻烦,一切需要侵入代码切换环境的行为都是不好的。

# 2.请求拦截

代表 mock.js

Mock.mock(/\\/api\\/visitor\\/list/,'get',{
  code:200,
  msg:'ok',
  data:[
    {
      'id|+1':6,
      'name':'@sen'
      ...
    }
  ]
})
  • 优点 :与前端代码分离,可生成随机数

  • 缺点 :

  1. 数据都是动态生成的假数据,无法真实模拟增删改查的情况
  2. 只支持ajax,不支持fetch

# 3. 接口管理工具

代表:rap、swagger、moco、yapi

  • 优点 :配置功能强大,接口管理与 Mock 一体,后端修改接口 Mock 也跟着更改,可靠

  • 缺点 :

  1. 配置复杂,依赖后端
  2. 一般会作为大团队的基础建设而存在,没有这个条件需慎重考虑

# 4. 本地 node 服务器

代表:json-server

  • 优点 : 配置简单,自定义程度高,一切尽在掌握中,增删改查真实模拟

  • 缺点 : 与接口管理工具相比,无法随着后端 API 的修改而自动修改