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 相关文章推荐
判断某个字符在一个字符串中是否存在的js代码
Feb 28 Javascript
Javascript中的五种数据类型详解
Dec 26 Javascript
jquery实现简单手风琴菜单效果实例
Jun 13 Javascript
Node.js中Request模块处理HTTP协议请求的基本使用教程
Mar 31 Javascript
对象转换为原始值的实现方法
Jun 06 Javascript
微信小程序 wx.request(OBJECT)发起请求详解
Oct 13 Javascript
js数字计算 误差问题的快速解决方法
Feb 28 Javascript
js实现悬浮窗效果(支持拖动)
Mar 09 Javascript
jquery将标签元素的高设为屏幕的百分比
Apr 19 jQuery
各种选择框jQuery的选中方法(实例讲解)
Jun 27 jQuery
webpack项目调试以及独立打包配置文件的方法
Feb 28 Javascript
详解Ubuntu安装angular-cli遇到的坑
Sep 08 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
让你的网站首页自动选择语言转跳
2006/12/06 PHP
php入门学习知识点七 PHP函数的基本应用
2011/07/14 PHP
php获取excel文件数据
2017/04/21 PHP
PHP+jQuery实现滚屏无刷新动态加载数据功能详解
2017/05/04 PHP
PHP使用curl_multi_select解决curl_multi网页假死问题的方法
2018/08/15 PHP
PHP内置函数生成随机数实例
2019/01/18 PHP
javascript日期转换 时间戳转日期格式
2011/11/05 Javascript
使用JS CSS去除IE链接虚线框的三种方法
2013/11/14 Javascript
javascript中数组的concat()方法使用介绍
2013/12/18 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
JavaScript运算符小结
2015/06/03 Javascript
Zero Clipboard实现浏览器复制到剪贴板的方法(多个复制按钮)
2016/03/24 Javascript
jQuery内容折叠效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
Angular ng-repeat遍历渲染完页面后执行其他操作详细介绍
2016/12/13 Javascript
react中的ajax封装实例详解
2017/10/17 Javascript
JS实现小球的弹性碰撞效果
2017/11/11 Javascript
解决使用vue.js路由后失效的问题
2018/03/17 Javascript
Vue 使用 Mint UI 实现左滑删除效果CellSwipe
2018/04/27 Javascript
JavaScript动态创建二维数组的方法示例
2019/02/01 Javascript
区分vue-router的hash和history模式
2020/10/03 Javascript
如何编写一个 Webpack Loader的实现
2020/10/18 Javascript
numpy中的delete删除数组整行和整列的实例
2018/05/09 Python
python 一篇文章搞懂装饰器所有用法(建议收藏)
2019/08/23 Python
Python类中的魔法方法之 __slots__原理解析
2019/08/26 Python
Python解释器以及PyCharm的安装教程图文详解
2020/02/26 Python
基于Python共轭梯度法与最速下降法之间的对比
2020/04/02 Python
H5页面适配iPhoneX(就是那么简单)
2019/12/02 HTML / CSS
聪明的粉丝购买门票的地方:TickPick
2018/03/09 全球购物
俄罗斯家居用品购物网站:Евродом
2020/11/21 全球购物
学习十八大报告感言
2014/02/04 职场文书
个人自荐材料
2014/05/23 职场文书
节约用电标语
2014/06/17 职场文书
常务副县长“三严三实”对照检查材料思想汇报
2014/10/05 职场文书
2015年公共机构节能宣传周活动总结
2015/03/26 职场文书
2015年乡镇信访工作总结
2015/04/07 职场文书
好人好事新闻稿
2015/07/17 职场文书