1)安装mockjs,这一步跳过
2)在项目中建立mock模块,笔者的目录结构如下
mock模块与接口模块一一对应,有一个接口,就有一个mock
3)编写登陆模块mock接口,代码如下:
import * as appUtils from '../../utils/appUtils' /** * 系统接口MOCK模块 * @param opt */ export const login = { type: 'get', url: '/login', cb: opt => { const params = appUtils.getParams(opt.url) console.log('%cmock拦截, 响应: ', 'color:blue', params) return params } }
其中cb,为一个function对象,入参为接口参数
该方法内,可以根据入参定制返回结果
4)编辑mock模块索引文件index.js,代码如下:
import Mock from 'mockjs' import * as login from './module/login' const modules = [login] // MOCK 初始化配置 Mock.setup({ timeout: '200-600' }) for (const module of modules) { for (const key in module) { const {url, type, cb} = module[key] Mock.mock(new RegExp(url), type, (opt) => { console.log('%cmock拦截, 请求: ', 'color:blue', opt) return cb(opt) }) } }
若果新增其他mock模块,如user,menu等等,只要在该文件中引入即可,参考login的引入
5)启用mock
修改main文件,增加如下配置
const openMock = true if (process.env.NODE_ENV === 'development' && openMock) { console.log('mock model') require('./mock') }
改变openMock,来控制开发环境的mock启用
来源:https://www.cnblogs.com/weiziyu/p/12021898.html