mock基礎(chǔ)語法

MOCK

  • 數(shù)據(jù)模塊定義規(guī)范(DTD)
  • 數(shù)據(jù)占位符定義規(guī)范(DPD)

DTD

  1. 屬性名
  2. 生成規(guī)則
  3. 屬性值

屬性名和生成規(guī)則用| 分隔。生成規(guī)則可選 ,有7中規(guī)則

1 2 3 4 5 6 7
name|min-max name|count name|min-max.dmin-dmax name|min-max.dcount name|count.dmin-dmax name|count.dcount name|+step

用法

  • 屬性值是字符串'name|min-max':string 生成重復(fù)次數(shù)大于min小于max的字符串

  • 屬性值是number

    1. 'name+1':number屬性值自動(dòng)加1 初始值為number
    2. 'name|min-max':number 生成>=min <= max的整數(shù) number為類型
    3. 'name|min-max.dmin-dmax': number 生成一個(gè)浮點(diǎn)數(shù)牧挣,整數(shù)部分大于等于 min淡诗、小于等于 max,小數(shù)部分保留 dmin 到 dmax 位窘奏。
  • 屬性是boolean 'name|1':boolean隨機(jī)生成一個(gè)boolean值 true false各占一半

  • 屬性值是對象 Object

  1. 'name|count'從屬性值object 中隨機(jī)取 count個(gè)屬性
  2. 'name|min-max':object從屬性值 隨機(jī)選取min到max個(gè)屬性
  • 屬性值是數(shù)組Array
    1. 'name|1': array
      從屬性值 array 中隨機(jī)選取 1 個(gè)元素,作為最終值。
    2. 'name|+1': array
      從屬性值 array 中順序選取 1 個(gè)元素膨更,作為最終值。
    3. 'name|min-max': array
      通過重復(fù)屬性值 array 生成一個(gè)新數(shù)組缴允,重復(fù)次數(shù)大于等于 min荚守,小于等于 max珍德。
    4. 'name|count': array
      通過重復(fù)屬性值 array 生成一個(gè)新數(shù)組,重復(fù)次數(shù)為 count矗漾。
  • 屬性值為Function
    1.'name': function
    執(zhí)行函數(shù) function锈候,取其返回值作為最終的屬性值,函數(shù)的上下文為屬性 'name' 所在的對象敞贡。
  • 屬性值為正則表達(dá)式RegExp
    1.'name': regexp
    根據(jù)正則表達(dá)式 regexp 反向生成可以匹配它的字符串泵琳。用于生成自定義格式的字符串。

DPD

占位符 只是在屬性值字符串中占個(gè)位置誊役,并不出現(xiàn)在最終的屬性值中获列。格式如下:

@占位符
@占位符(參數(shù) [, 參數(shù)])
  1. 用 @ 來標(biāo)識(shí)其后的字符串是 占位符。
  2. 占位符 引用的是 Mock.Random 中的方法蛔垢。
  3. 通過 Mock.Random.extend() 來擴(kuò)展自定義占位符击孩。
  4. 占位符 也可以引用 數(shù)據(jù)模板 中的屬性。
  5. 占位符 會(huì)優(yōu)先引用 數(shù)據(jù)模板 中的屬性鹏漆。
  6. 占位符 支持 相對路徑 和 絕對路徑巩梢。
Mock.mock({
    name: {
        first: '@FIRST',
        middle: '@FIRST',
        last: '@LAST',
        full: '@first @middle @last'
    }
})
// =>
{
    "name": {
        "first": "Charles",
        "middle": "Brenda",
        "last": "Lopez",
        "full": "Charles Brenda Lopez"
    }
}

占位符

type method
basic boolean, natural, integer, float, character, string, range, date, time, datetime, now
Image image, dataImage
Color color
Text paragraph, sentence, word, title, cparagraph, csentence, cword, ctitle
Name first, last, name, cfirst, clast, cname
Web url, domain, email, ip, tld
Address capitalize, upper, lower, pick, shuffle
Miscellaneous guid, id
//使用方式 mock相應(yīng)請求 返回string對象
Mock.mock(
     'http://test/data',{
        "userName" : '@name',     //模擬名稱
        "age|1-100":100,          //模擬年齡(1-100)
        "color"    : "@color",    //模擬色值
        "date"     : "@date('yyyy-MM-dd')",  //模擬時(shí)間
        "url"      : "@url()",     //模擬url
        "content"  : "@cparagraph()" //模擬文本
     }
   )
 //生成一個(gè)對象數(shù)組 如截圖
    Mock.mock('http://test/jsonList', {
        'list|1-10': [{
            'id|+1': 1,
            'email': '@EMAIL',
            'regexp4': /\d{5,10}/,
            'name': '@cname', //隨機(jī)產(chǎn)生一個(gè)中文的姓名
        }],
        'country|1':['中國','美國','日本'],
        'moblie|1':['13531544954','13632250649','15820292420','15999905612'] //在數(shù)組中隨機(jī)找一個(gè)
    })
data.png
//發(fā)送請求
$.ajax({
    url:'http://test/data',
    dataType:'json',
    data:{},
    success:function(data){
 
    },
    error:function(err) {

    }
  })



//設(shè)置請求時(shí)間
Mock.setup({
    timeout: 400
})
Mock.setup({
    timeout: '200-600'
})
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市艺玲,隨后出現(xiàn)的幾起案子括蝠,更是在濱河造成了極大的恐慌,老刑警劉巖板驳,帶你破解...
    沈念sama閱讀 218,941評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件又跛,死亡現(xiàn)場離奇詭異,居然都是意外死亡若治,警方通過查閱死者的電腦和手機(jī)慨蓝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,397評論 3 395
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來端幼,“玉大人礼烈,你說我怎么就攤上這事∑排埽” “怎么了此熬?”我有些...
    開封第一講書人閱讀 165,345評論 0 356
  • 文/不壞的土叔 我叫張陵,是天一觀的道長滑进。 經(jīng)常有香客問我犀忱,道長,這世上最難降的妖魔是什么扶关? 我笑而不...
    開封第一講書人閱讀 58,851評論 1 295
  • 正文 為了忘掉前任阴汇,我火速辦了婚禮,結(jié)果婚禮上节槐,老公的妹妹穿的比我還像新娘搀庶。我一直安慰自己拐纱,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,868評論 6 392
  • 文/花漫 我一把揭開白布哥倔。 她就那樣靜靜地躺著秸架,像睡著了一般。 火紅的嫁衣襯著肌膚如雪咆蒿。 梳的紋絲不亂的頭發(fā)上东抹,一...
    開封第一講書人閱讀 51,688評論 1 305
  • 那天,我揣著相機(jī)與錄音蜡秽,去河邊找鬼府阀。 笑死,一個(gè)胖子當(dāng)著我的面吹牛芽突,可吹牛的內(nèi)容都是我干的试浙。 我是一名探鬼主播,決...
    沈念sama閱讀 40,414評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼寞蚌,長吁一口氣:“原來是場噩夢啊……” “哼田巴!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起挟秤,我...
    開封第一講書人閱讀 39,319評論 0 276
  • 序言:老撾萬榮一對情侶失蹤壹哺,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后艘刚,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體管宵,經(jīng)...
    沈念sama閱讀 45,775評論 1 315
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,945評論 3 336
  • 正文 我和宋清朗相戀三年攀甚,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了箩朴。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 40,096評論 1 350
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡秋度,死狀恐怖炸庞,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情荚斯,我是刑警寧澤埠居,帶...
    沈念sama閱讀 35,789評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站事期,受9級(jí)特大地震影響滥壕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜兽泣,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,437評論 3 331
  • 文/蒙蒙 一绎橘、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧撞叨,春花似錦金踪、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,993評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至枷餐,卻和暖如春靶瘸,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背毛肋。 一陣腳步聲響...
    開封第一講書人閱讀 33,107評論 1 271
  • 我被黑心中介騙來泰國打工怨咪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人润匙。 一個(gè)月前我還...
    沈念sama閱讀 48,308評論 3 372
  • 正文 我出身青樓诗眨,卻偏偏與公主長得像,于是被迫代替她去往敵國和親孕讳。 傳聞我的和親對象是個(gè)殘疾皇子匠楚,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,037評論 2 355

推薦閱讀更多精彩內(nèi)容