mockjs 的语法规则

Posted mufengchun

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mockjs 的语法规则相关的知识,希望对你有一定的参考价值。

  mockjs主要有两种语法规范: 数据模板定义规范DTD  && 数据占位符定义规范DPD;

  数据模板中的每个属性由三部分组成: 属性名、规则、属性值;

    属性名和规则之间用 “|” 进行分割;生成规则是可选的,一共有七种规则,但是规则的含义具体要根据属性值来进行确定,不同的属性值对应的规则含义是不同的;属性值中可以包含 @占位符,并且属性值还指定了最终值的初始值以及类型;

    我们在实际的应用中,属性值的类型其实就是我们 js 中数据的类型:string、number、boolean、object、array、function以及正则reg ;

    1)、属性值为 string

      ‘ name| min-max‘ : string ;  //通过重复string生成一个字符串,string的重复次数 大于等于min ; 小于等于max ;

      ‘ name| count‘ : string;  //通过重复string生成一个字符串,重复次数为 count ;

    2)、属性值为 number

      ‘ name| min-max‘ : number ;  //生成一个大于等于min 小于等于 max 的整数;

      ‘ name| +1‘ : number ;  //属性值自动加1,初始值为 number ;

      ‘ name| min-max.dmin-dmax’ : number ;  //生成一个浮点数,整数部分大于等于min,小于等于max; 小数部分保留 dmin 到 dmax 位;

    3)、属性值为 boolean

      ‘ name| 1‘ : boolean ; //随机生成一个布尔值,值为 true 和 false 的概率均为 50%;

      ‘ name| min-max‘ : boolean ; //随机生成一个布尔值,值为 true 的概率为 min/( min + max) ; 值为 false 的概率为 max/( min + max);

    4)、属性值为 object 

      ‘ name| count‘ : object ;    //从object中随机抽取count 个属性;

      ‘ name| min-max‘ : object;  //从object中随机抽取 min 到 max 个属性;

    5)、属性值为 array

      ‘ name| 1‘: array ;  //从array中随机选取一个值最为最终值;

      ‘ name| +1‘ : array;  //从array 中顺序选择一个元素,最为最终值;

      ‘ name| min-max‘ : array ;  //通过重复array 生成一个新数组,重复的次数大于等于min, 小于等于max ;

      ‘ name| count‘ : array;  //通过重复array 生成一个新数组,重复的次数为 count ;

    6)、属性值为 function

      ‘ name‘ : function ;  // 执行function,使其最终的返回值最为 最终的属性值;函数的上下文为 name 所在的对象;

    7)、属性值为 RegExp

      ‘ name‘ : reg ;   //根据正则去生成一个符合这个正则表达式规则的属性值;

以上是关于mockjs 的语法规则的主要内容,如果未能解决你的问题,请参考以下文章

进行独立于后台后端的前端开发——学习Mockjs

mockjs 初识

mockJs语法糖用例

Emmet语法规则

语法语义与哲学

Mockjs在前端H5中的实践