
Vue——mock模拟数据的使用
发布日期:2021-05-08 02:48:53
浏览次数:10
分类:精选文章
本文共 1644 字,大约阅读时间需要 5 分钟。
在获取不到后台数据的时候我们也可以把页面搞起来
生成随机数据
1. 首先应该先建立一个json文件,把模拟数据写进去
2. 安装
npm install mockjs
3. 建立js文件,使用mockjs提供mock数据接口
阅读官网,mockjs的mock方法有以下几种
- rurl 可选。 表示需要拦截的 URL,可以是 URL 字符串或 URL 正则。例如 //domain/list.json/、’/domian/list.json’。
- rtype 可选。 表示需要拦截的 Ajax 请求类型。例如 GET、POST、PUT、DELETE 等
- template 可选。 表示数据模板,可以是对象或字符串。例如 { ‘data|1-10’:[{}] }、’@EMAIL’。
- function(options) 可选。 表示用于生成响应数据的函数。
- Mock.mock( rurl?, rtype?, template|function( options ) ) 根据数据模板生成模拟数据。
- Mock.mock( template ) 根据数据模板生成模拟数据。
- Mock.mock( rurl, template ) 记录数据模板。当拦截到匹配 rurl 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。
- Mock.mock( rurl, rtype, template ) 记录数据模板。当拦截到匹配 rurl 和 rtype 的 Ajax 请求时,将根据数据模板 template 生成模拟数据,并作为响应数据返回。
- Mock.mock( rurl, rtype, function( options ) ) 记录用于生成响应数据的函数。当拦截到匹配 rurl 和 rtype 的 Ajax 请求时,函数 function(options) 将被执行,并把执行结果作为响应数据返回
注意返回的模板template要和文档的一样,例如用code:0,表示请求成功
import Mock from 'mockjs'import data from './data.json'// 返回goods的接口Mock.mock('/goods', { code:0, data: data.goods})
4.在main文件在加载js文件
import './mock/mockServer' // 加载mockServer即可
拦截ajax请求
1. 不使用本地代理
export const reqShopInfo = () => ajax('/info')
2.ajax请求后会影响store
首先增加新的state变量,例如商家列表
export default { goods: [], // 商品列表 ratings: [], // 商家评价列表}
再者增加mutations
[RECEIVE_GOODS](state, { goods}) { state.goods = goods }
最后增加actions并进行异步请求
// 异步获取商家商品列表 async getShopGoods({ commit}, callback) { const result = await reqShopGoods()//请求mock模拟数据 if (result.code === 0) { const goods = result.data//获取结果 commit(RECEIVE_GOODS, { goods})//更新数据 // 数据更新了, 通知一下组件 callback && callback() } }
发表评论
最新留言
很好
[***.229.124.182]2025年03月30日 21时17分17秒
关于作者

喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!
推荐文章
结构型设计在工作中的一些经验总结
2021-05-07
如何提升员工体验 助力企业业务增长?这个棘手的问题终于被解决了!
2021-05-07
2020 AI 产业图谱启动,勾勒中国 AI 技术与行业生态
2021-05-07
Netty4服务端入门代码示例
2021-05-07
MyBatis自定义类型转换器
2021-05-07
Python:面向对象
2021-05-07
Spring源码:prepareBeanFactory(beanFactory);方法
2021-05-07
AcWing 828. 模拟栈
2021-05-07
(20200328已解决)从docker容器内复制文件到宿主机
2021-05-07
理解Docker ulimit参数
2021-05-07
OpenAI Gym简介及初级实例
2021-05-07
int 转 CString
2021-05-07
Edit编辑框自动换行与长度
2021-05-07
Java面向对象
2021-05-07
JAVA带标签的break和continue
2021-05-07
Java获取线程基本信息的方法
2021-05-07
vue源码分析(MVVM篇)
2021-05-07
设计模式之组合模式
2021-05-07
(Python学习笔记):字典
2021-05-07
(C++11/14/17学习笔记):线程启动、结束,创建线程多法、join,detach
2021-05-07