MOCK

266 阅读2分钟

Mock

安装

  • npm i mockjs

使用

  • 创建一个文件,例如名字为index.js,导入mockjs
  • 在main里面导入index.js

固定api

  • 声明:带c的都是中文,不带的是英文
  • 'string|4': '哎呦'生成一个字符串,|4是四个,|1-4是1-4条随机,不写是一个
  • string: '@cword()' @cword()是生成一个文本,里面(2)是两个,(1,9)是一到九个
  • title:'@ctitle(1)',@ctitle()随机生成一个标题,(5)是标题为五个字符串,(1-5)是一到5之间随机,以c开头的都是中文
  • sentence:'@csentence(1)',@csentence()随机生成句子,(1)是只有1个字符串,(1-5)是一到五随机
  • content:'@cparagraph(2)'@cparagraph()随机生成一个段落,(1)是只有一句话,(1-9)一到9个句子
  • 'number|1-100':10生成一个数字10,number|1生成数字1 ,number|1-100生成一个1-100的随机数
  • id:'@increment(1)',@increment()生成一个不相同的id,在前一个的基础上+1
  • name:'@cname()随机生成名字
  • idC:'@id()随机生成id
  • address:'@city()',随机生成地址,()里面加true就带省份,不加就是不带
  • img:'@image()',@image()随机生成一个图片,('250x250','#fff','#000','png','坤坤'),生成一个250x250大小背景色#fff,字体颜色为#000,包含坤坤两个字的png图片
  • date:'@date()'生成时间,只有年月日,(yyyy-MM-dd hh:mm:ss)带有年月日时分秒的})
  • 请求方法看代码块
//定义get请求
// Mock.mock('/api/news', 'get', {
//     status: 200,
//     msg: 'get获取成功',
//     data
// })
//返回参数可以是一个对象,也可以是一个函数,函数的话需要return 
//Mock的地址里面是支持正则的,get请求如果不用正则匹配的话,会请求失败
Mock.mock(/\/api\/news/, 'get', (options) => {
    return {
        status: 200,
        msg: 'get获取成功',
        data
    }
})
//定义post请求
Mock.mock('/api/news', 'post', {
    status: 200,
    msg: 'post获取成功',
    data
})
  • 具体使用方法
const data = Mock.mock({
    'list|8': [//list是生成一个'list|8'生成八个数组,'list|8-20'生成8-20个数组,list是自定义的
        {
            name: '@cname()',
            address: '@city(true)',
            id: '@increment(1)'
        }
    ]
})