使用mockjs如何生成随机数据

 更新时间:2024年10月12日 09:54:38   作者:harmsworth2016  
Mockjs是一个用于生成随机数据和拦截Ajax请求的库,可以与Vue和Axios结合使用,提高前端开发效率,通过在项目中引入Mock.js文件,可以模拟后端API,拦截Ajax请求并返回自定义响应,这种方法适用于在后端尚未开发完成时的前端开发测试

mockjs生成随机数据

概述

  • 现在,前后端分离趋势很明显,前端负责数据展示、页面动态效果等,而后端负责编写应用程序接口,供页面、第三方等调用。
  • 工作时,常常遇见的问题是:前端已经写好了页面,一直在等待后端接口的联调,等待也不是办法,有没有专门造假数据的工具呢?
  • mockjs就应运而生!

环境

  • vue2.2 + webpack3.0
  • mockjs
  • axios

引入mock.js文件

在main.js中引入mock.js

mock.js文件-拦截ajax请求,返回数据

const Mock = require('mockjs')

// 返回字符串
Mock.mock('/api/data', (req, res) => {
    return Mock.mock({
        'string|3': '*'
    })
})

// 返回指定范围的整数
Mock.mock('/api/getInteger', (req, res) => {
    return Mock.mock({
        'a|1-100': 100
    })
})

// 返回随机个数的对象
Mock.mock('/api/getObject', (req, res) => {
    return Mock.mock({
        'brand|1-3': {
            a: '京东',
            b: '国美',
            c: '苏宁',
            d: '当当',
            e: '天猫',
            f: '淘宝'
        }
    })
})

// 返回随机数组
Mock.mock('/api/getArr', (req, res) => {
    return Mock.mock({
        'data|1-10': [
          {
            'name': '张三'
          }
        ]
      })
})

// 返回随机字符
Mock.mock('/api/getRandom1', (req, res) => {
    return Mock.mock({
        'random1': /[a-z]{2}[A-Z]{2}[0-9]/
    })
})

// 返回随机字符
Mock.mock('/api/getRandom2', (req, res) => {
    return Mock.mock({random2: '@string("lower", 5)'})
})

// 返回UUID
Mock.mock('/api/getUUID', (req, res) => {
    return {'uuid': Mock.Random.id()}
})

使用axios发起http请求

import axios from 'axios'
export default {
    components: {
    },
    data () {
        return {

        }
    },
    computed: {
    },
    mounted () {
        this.init()
    },
    methods: {
        init () {
            axios.get('/api/data').then(res => {
                console.log(res.data,'字符串')
            })

            axios.get('/api/getInteger').then(res => {
                console.log(res.data, '数字')
            })

            axios.get('/api/getObject').then(res => {
                console.log(res.data, '对象')
            })

            axios.get('/api/getArr').then(res => {
                console.log(res.data, '数组')
            })

            axios.get('/api/getRandom1').then(res => {
                console.log(res.data, '5个随机字符-方式一')
            })

            axios.get('/api/getRandom2').then(res => {
                console.log(res.data, '5个随机字符-方式二')
            })

            axios.get('/api/getUUID').then(res => {
                console.log(res.data, 'uuid')
            })
        }
    }
}

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • 一文带你了解vite对浏览器的请求做了什么

    一文带你了解vite对浏览器的请求做了什么

    Vite是一种新型前端构建工具,能够显著提升前端开发体验,下面这篇文章主要给大家介绍了关于vite对浏览器的请求做了什么的相关资料,文中通过实例代码介绍的非常详细,需要的朋友可以参考下
    2021-12-12
  • vue实现将图像文件转换为base64

    vue实现将图像文件转换为base64

    这篇文章主要介绍了vue实现将图像文件转换为base64,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-02-02
  • 代替Vue Cli的全新脚手架工具create vue示例解析

    代替Vue Cli的全新脚手架工具create vue示例解析

    这篇文章主要为大家介绍了代替Vue Cli的全新脚手架工具create vue示例解析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-10-10
  • 谈谈因Vue.js引发关于getter和setter的思考

    谈谈因Vue.js引发关于getter和setter的思考

    最近因为公司的新项目决定使用Vue.js来做,但在使用的过程中发现了一个有趣的事情,因为发现的这个事情展开了一些对于getter和setter的思考,具体是什么下面通过这篇文章来一起看看吧,有需要的朋友们可以参考学习。
    2016-12-12
  • vue中的过滤器及其时间格式化问题

    vue中的过滤器及其时间格式化问题

    这篇文章主要介绍了vue中的过滤器及其时间格式化,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • Vue3 KeepAlive实现原理解析

    Vue3 KeepAlive实现原理解析

    KeepAlive 是一个内置组件,那封装一个组件对于大家来说应该不会有太大的困难,它的核心逻辑在于它的 render 函数,它用 map 去记录要缓存的组件,就是 [key,vnode] 的形式,这篇文章主要介绍了Vue3 KeepAlive实现原理,需要的朋友可以参考下
    2022-09-09
  • VueCLI通过process.env配置环境变量的实现

    VueCLI通过process.env配置环境变量的实现

    本文主要介绍了VueCLI通过process.env配置环境变量的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • Vue中引用assets中图片的实现方式

    Vue中引用assets中图片的实现方式

    这篇文章主要介绍了Vue中引用assets中图片的实现方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10
  • vue单文件组件无法获取$refs的问题

    vue单文件组件无法获取$refs的问题

    这篇文章主要介绍了vue单文件组件无法获取$refs的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-06-06
  • vue-router 手势滑动触发返回功能

    vue-router 手势滑动触发返回功能

    这篇文章主要介绍了vue-router 手势滑动触发返回功能,文中通过实例代码给大家介绍了vue图片左右滑动及手势缩放,需要的朋友可以参考下
    2018-09-09

最新评论