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 的语法规则的主要内容,如果未能解决你的问题,请参考以下文章