mock.js随笔

npm install mockjs

在vue项目中新建一个为mock.js
代码为:

`//引入 mockjs 模块
import Mock from "mockjs";
  Mock.mock("myList", {
    
    
    "list|5": [         //对象 5是固定值 可以设置1-20  随机
      //随机返回5项
      {
    
    
        // title: "@ctitle(5,20)",
        // url: "@url", //随机生成url
        // "xx|1-5":"★",   //string
        // "xxx|3":"★",
        // 'id|+1':1,  //number id自增一
        // 'number|1-100':100,     //number 1-100的随机数
        // "number2|123.2":1,       //number  123固定 .后面是2位小数 随机;
        // "boolean|1":true,       //boolean 随机
        // "arr|+1":["1","2","3"],  //数组自加1
        // "arr|1-2":["1","2","3"],    //数组 数组*1或2
        // "string1":'123',            //字符串 固定名字
        // 'regexp': /\d{5,10}/,       //正则随机数 跟上面的number  差不多
        // "absolutePath": "@xx @url"  //根据@和路劲(/(前进) 或者 ../(回退))  @就是查找的意思
        // "boolean":'@boolean()',          //@boolean() 随机 bool(true/false)
        // "number3":'@natural()',         //@natrural() 随机数
        // "number4":'@natural(10000)',         //@natrural() 随机数 没有测试到位这个1000 是什么结果
        // "number5":'@natural(1,100)',         //@natrural(min,max) 随机数 min 最小值, max最大值;
        // "javaFloat":'@float(60,100,1,3)',     //@float(min,max,xsmin,xsmax) min 最小值 max最大值 xsmin小数最小值 xsmax 小数最大值 float是java类型的浮点类型
        // "character":'@character(upper)',        //@character 应该是单个字符串 里面参数有4钟character( 'lower/upper/number/symbol' )lower:小写英文 upper:大写英文 number:数字 symbol:符号
        // "string1":'@string(5)',                //随机五个字符串和符号
        // "string2":'@string(number,5)',         //随机字符串数字五个 形参1可以为:lower/upper/number/symbol/iioopp(随便给) 形参2为:数字
        // "string3":'@string(1,5)',         //随机字符串一到五
        // "string4":'@string(number,1,5)',         //随机字符串数字一到五
        // "range1":'@range(5)',                //数组顺序五个
        // "range2":'@range(1,15,3)',                //数组顺序 以三自增
        // "date1":'@date()',                              //@date 日期   2016-09-09
        // "date2":'@date(yyyy-MM-dd)',                      //@date 日期 2002-03-30
        // "date3":'@date(yy-MM-dd)',                       //@date 日期  91-09-13
        // "date4":'@date(yyyy-MM-dd MM M dd d)',           //@date 日期  2013-03-29 03 3 29 29
        // "time1":'@time()',           //时间
        // "time2":'@time(A HH:mm:ss)',           //时间
        // "time3":'@time(HH:mm:ss)',           //时间
        // "time4":'@time(H:m:s)',           //时间
        // "dateTime1":'@datetime()',            //日期时间
        // "dateTime2":'@datetime(yyyy-MM-dd HH:mm:ss)',            //日期时间
        // "dateTime3":'@datetime(y-M-d H:m:s)',            //日期时间
        // "dateTime4":'@datetime(yyyy yy y MM M dd d HH H hh h mm m ss s SS S A a T)',            //日期时间
        // "now1":'@now()',      //当前时间   2021-01-11 14:16:43
        // "now2":'@now(year)',      //当前时间   2021-01-01 00:00:00
        // "now3":'@now(month)',      //当前时间  2021-01-01 00:00:00
        // "now4":'@now(day)',      //当前时间    2021-01-11 00:00:00
        // "now5":'@now(hour)',      //当前时间   2021-01-11 14:00:00
        // "now6":'@now(minute)',      //当前时间 2021-01-11 14:16:00
        // "now7":'@now(second)',      //当前时间 2021-01-11 14:16:43
        // "now8":'@now(yyyy-MM-dd HH:mm:ss SS)',      //当前时间 2021-01-11 14:16:43 437
        // "img1":"@dataImage(200x100,'hello')",       //图片@dataImage(size,text) size:图片的长框 text:图片内容
        // "color1":'@color()',             //@color 颜色随机
        // "color2":'@rgba()',             //@rgba 颜色随机
        // "text":'@paragraph(1,3)',              //text
        // "sentence":"@sentence(3.5)",            // 3-5为一中心 随机3-5个英文字母
        // "word":"@word(3,5)",                    // 3-5为一中心 随机3-5个英文字母
        // "title":'@title(3.5)',                  // 3-5为一中心 随机3-5个英文字母
        // "cparagraph":'@cparagraph(1,5)',        //3-5为一个中心句号结束 随机3-5个中文
        // "csentence":'@csentence(3,5)',              //3-5个中文字母 句号结束
        // "cword1":'@cword()',              //1个中文 没有句号结束
        // "cword2":'@cword(3,5)',              //3-5个中文 没有句号结束
        // "cword3":'@cword(零一二三四五六七八九十, 3, 5)',              //3-5个中文 没有句号结束
        // "ctitle1":'@ctitle()',              //@ctitle 随机中文 没有句号结束;
        // "ctitle2":'@ctitle(3,5)',              //@ctitle 3-5个中文 没有句号结束;
        // "ctitle3":'@ctitle(5)',              //@ctitle 5个中文 没有句号结束;
        "namne1":'@first()',         // 英语的名称
        "namne2":'@last()',         // 英语的名称
        "namne3":'@name()',         // 英语的名称 2个
        "cnamne1":'@cfirst()',         // 中文的名称
        "cnamne2":'@clast()',         // 中文的名称
        "cnamne3":'@cname()',         // 中文的名称 2个
        "url":'@url()',             //web 地址
        "email":'@email()',             //邮箱
        "region":'@region()',           //华南地区
        "province":'@province()',       //省份
        "city1":'@city()',       //城市 深圳市
        "city2":'@city(true)',       //城市 广东省 深圳市
        "id":'@id()'                //id 随机
        
      }
    ]
  });

然后在mianjs
引用刚刚配置好的mock.js文件

import mock from './uitle/mock.js'

然后在随便一个vue文件当中使用axios , //这边默认当前都安装axios

vue文件读取:

axios.get('myList').then(res =>{
    
    
   console.log(res);
 })

最后有一个问题是:

如果有真实数据的情况下 访问真实数据

没有真实数据的情况下 访问mockjs数据;

不使用if判断是否能来回切换呢?

Guess you like

Origin blog.csdn.net/bazcsx/article/details/112474035