vue 运用mock数据的示例代码


Posted in Javascript onNovember 07, 2017

本文介绍了vue 运用mock数据的示例代码,分享给大家,具体如下:

初始化你的项目

话不用??拢?紫瘸跏蓟?愕南钅浚?罴虻サ木褪鞘褂?ue-cli啦

vue init webpack

引入mock.js

安装 mockjs

npm install --save-dev mockjs

引入到Vue原型上,方便使用

import mockjs from 'mockjs'
 Vue.prototype.$mock = Vue.$mock = mockjs.mock

以上引入到Vue原型上,可以使用 this.$mock直接产生mock数据

请看这里Vue.prototype

请看这里mockjs

在项目开发中,前后台分离,做了假数据,项目使用vue2.0重构,后台也推到重来了,为了不耽误开发进程,我做了虚拟的数据请求,使用vue-cli脚手架搭建的项目文件中dev-server搭建虚拟api请求,访问自己mock的假数据虚拟请求后台的模式,具体做法如下

在build/dev-server.js文件中

在var app = express()这个实例的下面添加如下代码

// 本地json-server服务器搭建代码
// 引入数据库文件
var appData = require('../mock.json')
// 引入数据库
var getBoardList = appData.getBoardList
var apiRoutes = express.Router()
// 使用api的方法来创建连接时候的请求
apiRoutes.post('/getBoardList', function (req, res) {
 res.json({
 errno: 0 ,
 data: getBoardList
 });
})
// 调用api
app.use('/api', apiRoutes)

其中 appData 依赖的mock.json文件是自己mock的假数据的文件,根据前后台需求自己mock或者使用mock.js制作假数据

getBoardList是一个接口,var getBoardList = appData.getBoardList 就是在appData定义了这一个接口数据。

var apiRoutes = express.Router() 是创建了一个api的路由,apiRoutes.post是创建一个post接口,这个post接口有一个req和一个res参数,分别执行请求和返回,当返回的时候会给我们一个json,这个json包括一个状态码errno和返回的数据data(data指向了接口数据getBoardList)。

然后当我们调用api的时候app.use('/api', apiRoutes),就能正常使用这个服务了

这里我使用了vue2.0推荐的axios请求数据,代码如下

this.$http.post('/api/getBoardList')
 .then(function (response) {
  console.log(response.data.data);
  alert('成功了');
 })
 .catch(function (code) {
  alert('失败了');
  console.log(code);
 });

打开浏览器的控制台的network,你会发现已经产生了网络请求

vue 运用mock数据的示例代码

同时,数据也愉快的返回回来了:

vue 运用mock数据的示例代码

如果想添加接口数据,继续在dev-server.js中添加就可以了,post,get等等都可以。

注意,每次更改dev-server.js后需要重新npm run dev启动项目

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
基于jQuery的ajax功能实现web service的json转化
Aug 29 Javascript
jquery.ui.progressbar 中文文档
Nov 26 Javascript
javascript 命名规则 变量命名规则
Feb 25 Javascript
firefox下jQuery UI Autocomplete 1.8.*中文输入修正方法
Sep 19 Javascript
jQuery中unbind()方法用法实例
Jan 19 Javascript
jQuery实现鼠标滑过点击事件音效试听
Aug 31 Javascript
Vue.js每天必学之过滤器与自定义过滤器
Sep 07 Javascript
bootstrap实现每隔5秒自动轮播效果
Dec 20 Javascript
深入理解jquery的$.extend()、$.fn和$.fn.extend()
Jul 08 jQuery
基于JavaScript实现五子棋游戏
Aug 26 Javascript
小程序getLocation需要在app.json中声明permission字段
Apr 04 Javascript
小程序实现分类页
Jul 12 Javascript
vue环境搭建简单教程
Nov 07 #Javascript
用Webpack构建Vue项目的实践
Nov 07 #Javascript
vue双花括号的使用方法 附练习题
Nov 07 #Javascript
vue组件生命周期详解
Nov 07 #Javascript
Angular2的管道Pipe的使用方法
Nov 07 #Javascript
浅谈react 同构之样式直出
Nov 07 #Javascript
vue组件watch属性实例讲解
Nov 07 #Javascript
You might like
批量去除PHP文件中bom的PHP代码
2012/03/13 PHP
PHP文件缓存类示例分享
2015/01/30 PHP
codeigniter显示所有脚本执行时间的方法
2015/03/21 PHP
YII Framework教程之异常处理详解
2016/03/14 PHP
php通过header发送自定义数据方法
2018/01/18 PHP
Laravel5框架自定义错误页面配置操作示例
2019/04/17 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
2019/11/19 PHP
jQuery jqgrid 对含特殊字符json 数据的 Java 处理方法
2011/01/01 Javascript
JavaScript函数作用域链分析
2015/02/13 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
2015/03/06 Javascript
JS实现点击复选框将按钮或文本框变为灰色不可用的方法
2015/08/11 Javascript
[原创]JQuery 在表单提交之前修改 提交的值
2016/04/14 Javascript
JS中sort函数排序用法实例分析
2016/06/16 Javascript
百度地图API之百度地图退拽标记点获取经纬度的实现代码
2017/01/12 Javascript
ES6中参数的默认值语法介绍
2017/05/03 Javascript
javascript 产生随机数的几种方法总结
2017/09/26 Javascript
详解vue的diff算法原理
2018/05/20 Javascript
详解js根据百度地图提供经纬度计算两点距离
2019/05/13 Javascript
VUE 直接通过JS 修改html对象的值导致没有更新到数据中解决方法分析
2019/12/02 Javascript
8个非常实用的Vue自定义指令
2020/12/15 Vue.js
[47:42]完美世界DOTA2联赛PWL S2 GXR vs Ink 第一场 11.19
2020/11/20 DOTA
python定时采集摄像头图像上传ftp服务器功能实现
2013/12/23 Python
Python3中常用的处理时间和实现定时任务的方法的介绍
2015/04/07 Python
使用Python编写类UNIX系统的命令行工具的教程
2015/04/15 Python
神经网络理论基础及Python实现详解
2017/12/15 Python
python2与python3的print及字符串格式化小结
2018/11/30 Python
Python面向对象之类的封装操作示例
2019/06/08 Python
一行Python代码过滤标点符号等特殊字符
2019/08/12 Python
Pytorch通过保存为ONNX模型转TensorRT5的实现
2020/05/25 Python
Opencv图像处理:如何判断图片里某个颜色值占的比例
2020/06/03 Python
Python 如何反方向迭代一个序列
2020/07/28 Python
Dogeared官网:在美国手工制作的珠宝
2019/08/24 全球购物
艺术应用与设计个人的自我评价
2013/11/23 职场文书
关于环保的建议书
2014/05/12 职场文书
车贷收入证明范本
2014/09/14 职场文书
如何制作自己的原生JavaScript路由
2021/05/05 Javascript