美文网首页MockJS
Mock.js之Mock.Random

Mock.js之Mock.Random

作者: Lia代码猪崽 | 来源:发表于2019-11-18 16:03 被阅读0次

Mock.Random 是一个工具类,用于生成各种随机数据。Mock.Random 的方法在数据模板中称为“占位符”,引用格式为 @占位符(参数 [, 参数]) 。例如:

Random.email()
// => "n.clark@miller.io"
Mock.mock('@EMAIL')
// => "y.lee@lewis.org"
Mock.mock( { email: '@EMAIL' } )
// => { email: "v.lewis@hall.gov" }

可以在上面的例子中看到,直接调用 'Random.email()' 时方法名 email() 是小写的,而数据模板中的 @EMAIL 却是大写。这并非对数据模板中的占位符做了特殊处理,也非强制的编写方式,事实上在数据模板中使用小写的 @email 也可以达到同样的效果。不过,这是建议的编码风格,以便在阅读时从视觉上提高占位符的识别度,快速识别占位符和普通字符。

在浏览器中,为了减少需要拼写的字符,Mock.jsMock.Random 暴露给了 window 对象,使之成为全局变量,从而可以直接访问 Random。因此上面例子中的 var Random = Mock.Random; 可以省略。在后面的例子中,也将做同样的处理。

在 Node.js 中,仍然需要通过 Mock.Random 访问。

Mock.Random 提供的完整方法(占位符)如下:

Type Method
Basics boolean, natural, integer, float, character, string, range, date, time, datetime, now
Image image, dataImage
Color color
Text paragraph, sentence, word, title
Name first, last, name
Web url, domain, email, ip, tld
Address area, region
Helpers capitalize, upper, lower, pick, shuffle
Miscellaneous guid, id

Mock.Random 中的方法与数据模板的 @占位符 一一对应,在需要时可以为 Mock.Random 扩展方法,然后在数据模板中通过 @扩展方法 引用。例如:

Random.extend({
    constellations: ['白羊座', '金牛座', '双子座', '巨蟹座', '狮子座', '处女座', '天秤座', '天蝎座', '射手座', '摩羯座', '水瓶座', '双鱼座'],
    constellation: function(date){
        return this.pick(this.constellations)
    }
})
Random.constellation()
// => "水瓶座"
Mock.mock('@CONSTELLATION')
// => "天蝎座"
Mock.mock({ constellation: '@CONSTELLATION'})
// => { constellation: "射手座" }

下面是 Mock.Random 内置支持的方法说明。

参考资料

http://mockjs.com/

相关文章

网友评论

    本文标题:Mock.js之Mock.Random

    本文链接:https://www.haomeiwen.com/subject/cyesictx.html