博客 / 詳情

返回

mockjs隨機數生成

一、初級使用 - 直接生成隨機模擬數據

直接以一個接口常見的返回格式為例:

Mock.mock(data);
let data = {
    code|1: [0, 1001, 1002, 1003], // 從數組中隨機取一個值
    message: '',
    data: {
        "data|length": [ // 按下邊的字段格式生成一個長度為 length 的數組
            {
                "id|+1": 0, // 屬性值自動加1,初始值為 0
                "likeNumber|0-100": 10, //生成一個[0,100]的整數,10用來確定類型
                "score|min-max.dmin-dmax": number, // 浮點數,限制方式與上一個整數相同
                "like": "@boolean(1)", // 生成布爾值
                "likeNum": "@integer(1,9999)", // 隨機1-9999間的數字
                "content": "@csentence(5,50)", // 隨機生成5-50個字符,結束帶句號
                "name": "@cword(2,5)", // 隨機生成2-5個字符,沒有標點
                "releaseTime": "@date(yyyy-MM-dd)",// 按格式生成隨機日期
                "creatTime": "@date(yyyy-MM-dd hh:mm:ss)",// 按格式生成隨機日期時間
                "name|min-max": "string", //通過重複 string 生成一個字符串,重複次數[min,max]次
                "name|count": "string", //通過重複 string 生成一個字符串,重複count次
                "name|min-max": object, // 從 object 中隨機選取[min,max]個屬性
                "name|count": object, // 從 object 中隨機選取count個屬性
                "name": function, // 執行function,其返回值為最終的屬性值,函數的上下文為屬性 'name' 所在的對象
                "": 
            
      }]
    }
}

二、攔截接口請求並返回模擬數據

Mock.mock(接口, 請求類型, Mock範式)

配置攔截ajax請求

Mock.setup({
    timeout: 400
})

mock獲取前端傳遞的數據

axios({
  method: "get",
  url: "/api/test",
  data: {
    id:2
  }
}).then(data => {
  console.log(data);
}

Mock.mock("/api/test", "get", (config) => {
  console.log(config);
  return data;
})
user avatar
0 位用戶收藏了這個故事!

發佈 評論

Some HTML is okay.