继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

前端虚拟接口mockJs的接入

ABOUTYOU
关注TA
已关注
手记 441
粉丝 67
获赞 359

标签(空格分隔): mockjs    模拟接口数据   前后端分离开发


前端模拟接口数据的方式,大概分为以下几种:

  • 在代码里硬编码:
    说白点 就是直接把模拟数据写死在代码中,简单粗暴,但是没解决问题,顶多起个占位作用调一调样式,和代码的耦合度太高,意义不大。

  • 本地json文件:
    这种方式我目前常用,可以通过ajax来访问,前提必须是get方式,json里存放的就是后台的接口数据,这里你起码可以正常发送ajax请求,字段写在模板里,避免了方式一中的耦和问题。

  • 抓包的工具的使用
    比如:青花瓷Charles 和 fiddler等对网络请求的拦截,找个你想要的数据,不符合的可以替换下,真实感受了下网络请求状况,但是这个时间成本就相对高了。而且对于开发一个系统来说,不方便统一配置。

  • Mock-sever
    最到位的方式无非是自己搭建独立的Mock-Server,开发的前期阶段,所有的接口都会指向这个Mock-Server。但是成本啊!外加你除了紧紧巴巴的开发周期外有空有心思搞这个吗?阿里妈妈推出了一道小菜-RAP ,是一个可视化接口管理工具,将所有的接口开发定义以其要求的格式进行管理,并能根据这些定义来产生Mock数据,提供给消费者。RAP为我们提供Mock-Server服务,那么我们下一步欠缺的就是如何让代码中的网络请求能直接访问到RAP上。还支持以函数的形式动态返还Mock数据,大大提升了Mock数据生成的能力,为了更加真实的接近真实的网络请求,还可以配置网络延时等。你说贴心不。话题打住,今天要说的是前的前辈:mockJs

简介

关于mockjs,官网描述的是

1.前后端分离

2.不需要修改既有代码,就可以拦截 Ajax 请求,返回模拟的响应数据。

3.数据类型丰富

4.通过随机数据,模拟各种场景。

vue项目中接入mockJs步骤:

  • 安装到项目

 npm install mockjs --save-dev
  • 在入口js中引入

webp

image.png


项目目录:


webp

image.png

  • 在mock.js中写入你mock规则:

这里规则摘自网络哈

// 引入mockjsconst Mock = require('mockjs');// 获取 mock.Random 对象const Random = Mock.Random;// mock一组数据const produceNewsData = function() {    let articles = [];    for (let i = 0; i < 100; i++) {        let newArticleObject = {            title: Random.csentence(5, 30), //  Random.csentence( min, max )
            thumbnail_pic_s: Random.dataImage('300x250', 'mock的图片'), // Random.dataImage( size, text ) 生成一段随机的 Base64 图片编码
            author_name: Random.cname(), // Random.cname() 随机生成一个常见的中文姓名
            date: Random.date() + ' ' + Random.time() // Random.date()指示生成的日期字符串的格式,默认为yyyy-MM-dd;Random.time() 返回一个随机的时间字符串
        }
        articles.push(newArticleObject)
    } 
    return {        articles: articles
    }
} 
// Mock.mock( url, post/get , 返回的数据);Mock.mock('/news/index', 'post', produceNewsData);
  • 在需要的组件汇总访问数据

 axios.post(url, params)
      .then(response => {
        resolve(response.data);
      })
这里的:
url:'/news/index', 
params:'type=xxx&key=xxx'

完毕!

参考链接

mockJS官网
简书
-----喜欢就动动小手哈。-----
-----你的支持是洒家-麦壳-macrolam前进的动力-----



作者:麦壳儿UIandFE2
链接:https://www.jianshu.com/p/1dc17f41e5ed


打开App,阅读手记
2人推荐
发表评论
随时随地看视频慕课网APP