• 前端如何用mockjs插件模拟接口调用


    mockjs的功能:1.生成随机数;2.拦截 Ajax 请求

    npm install mockjs 

     1.生成随机数

    1. // 导入 Mock
    2. import Mock from 'mockjs'
    3. // 调用方法得到随机数据
    4. const data = Mock.mock({
    5. // 属性 list 的值是一个数组,其中含有 1 到 10 个元素
    6. `list|1-10`: [{
    7. // 属性 id 是一个自增数,起始值为 1,每次增 1
    8. 'id|+1': 1
    9. }]
    10. })
    11. // 将数据进行打印
    12. console.log(JSON.stringify(data, null, 4))
    13. // ==>
    14. {
    15. "list": [
    16. {
    17. "id": 1
    18. },
    19. {
    20. "id": 2
    21. },
    22. {
    23. "id": 3
    24. }
    25. ]
    26. }

    JSON.stringify() 方法将 JavaScript 对象转换为字符串。

    JSON.stringify(value[, replacer[, space]])

    value:
    必需, 要转换的 JavaScript 值(通常为对象或数组)。

    replacer:
    可选。用于转换结果的函数或数组。

    如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值。使用返回值而不是原始值。如果此函数返回 undefined,则排除成员。根对象的键是一个空字符串:""。

    如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。成员的转换顺序与键在数组中的顺序一样。当 value 参数也为数组时,将忽略 replacer 数组。

    space:
    可选,文本添加缩进、空格和换行符,如果 space 是一个数字,则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。space 也可以使用非数字,如:\t。

    2.拦截 Ajax 请求

    当前端的静态页面铺设完成,而后端的接口还没有写好时,可以询问后端返回数据的格式,使用 mockjs 来模拟后端接口的调用

    Mock.mock()拦截 Ajax 请求的三个参数:

    第一个参数:要拦截的请求路径

    第二个参数:要拦截的请求方式

    第一个参数:拦截后的处理逻辑

    1. // mock/index.js
    2. import Mock from 'mockjs'
    3. import mockServer from './mockServer'
    4. /* 接口里的地址 请求方式 mock中对应的返回 */
    5. /* 入库单列表 */
    6. Mock.mock(/\/instock\/test/, 'post', mockServer.getInstockList)
    1. // mock/mockServer.js
    2. const list = {
    3. "code": 10000,
    4. "data": [
    5. {
    6. "num": "2000042812034758000007",
    7. "createTime": "2022-08-28 17:18:14",
    8. },
    9. {
    10. "num": "2000042812034758000008",
    11. "createTime": "2022-08-28 17:18:14",
    12. }
    13. ],
    14. "msg": "success"
    15. }
    16. export default {
    17. /* 入库单列表 */
    18. getInstockList: () => {
    19. return {
    20. total: list.length,
    21. data: list
    22. }
    23. }
    24. }
    1. //main.js
    2. import '@/mock/index.js'
    1. /* 封装mock接口 然后正常使用 */
    2. export const instockListb= (data) => (
    3. service({
    4. url: '/instock/test',
    5. method: 'post',
    6. data,
    7. })
    8. )

  • 相关阅读:
    CSP-J1 CSP-S1 第1轮 初赛 集训视频集(2022.08.22)
    翻译一组文本 API 返回值说明
    QT页面布局方法大全
    数字信号处理2: 离散信号与系统的频谱分析
    zabbix邮件报警配置
    Vue项目初始化搭建JDK+Node.js+npm+vue-cli+创建Vue项目
    子域名收集&Google搜索引擎语法
    Day19:信息打点-红蓝队自动化项目&资产侦察&武器库部署&企查产权&网络空间
    v-model的修饰符
    【leetcode】【2022/9/11】857. 雇佣 K 名工人的最低成本
  • 原文地址:https://blog.csdn.net/wxiao_xiao_miao/article/details/126890079