vue-cli3使用mock数据的方法分析


Posted in Javascript onMarch 16, 2020

本文实例讲述了vue-cli3使用mock数据的方法。分享给大家供大家参考,具体如下:

在前后端分离的开发模式中,后端给前端提供一个接口,由前端向后端发请求,得到数据后前端进行渲染。由于前后端开发进度的不统一,前端往往使用本地的测试数据进行数据渲染的测试。

正文开始

在vue-cli构建的项目,我们可以借助devServer开启一个服务,然后我们可以通过路由模拟一个接口来进行测试。

在vue-cli2和vue-cli3中的配置方式是不同的。下面分别展示

## vue-cli2

先放一张vue-cli2生成项目图片

vue-cli3使用mock数据的方法分析

mock文件夹是一个我自己创建的用来存放模拟数据的文件夹,其中有一个json文件,下面我们要对build目录下webpack.dev.conf.js进行配置

// 引入文件
const goodsList = require('../mock/goods.json');
// ……
// 配置devServer
devServer: {
  clientLogLevel: 'warning',
  historyApiFallback: {
   rewrites: [
    { from: /.*/, to: path.posix.join(config.dev.assetsPublicPath, 'index.html') },
   ],
  },
  hot: true,
  contentBase: false, // since we use CopyWebpackPlugin.
  compress: true,
  host: HOST || config.dev.host,
  port: PORT || config.dev.port,
  open: config.dev.autoOpenBrowser,
  overlay: config.dev.errorOverlay
   ? { warnings: false, errors: true }
   : false,
  publicPath: config.dev.assetsPublicPath,
  proxy: config.dev.proxyTable,
  quiet: true, // necessary for FriendlyErrorsPlugin
  watchOptions: {
   poll: config.dev.poll,
  },
  before(app){
   app.get('/goods/list',(req,res,next)=>{
    res.json(goodsList);
   })
  }

后面的before(app)部分就定义了可以通过向/goods/list发送get请求来得到我们要的json文件。

同事我们在vue文件中只要

// 利用了axios
axios.get("/goods/list").then(res => {
    this.goodsList = res.data.result;
   }).catch(error=>{
    console.log(error);
   });

就可以请求到数据

vue-cli3

vue-cli3主打自动化,0配置。但是我们往往需要进行一些配置,这时我们就要创建一个配置文件。目录结构如下

vue-cli3使用mock数据的方法分析

vue.config.js就是我们手动创建的配置文件,完整的配置项可以在官网看到,在这里我们着重于devServer

const mockdata = require('./mock/test.json');

module.exports={
 devServer: {
  port:4000,
  before(app){
   app.get('/goods/list',(req,res,next)=>{
    res.json(mockdata);
   })
  }
 }
}

这样就达到了相同的效果

希望本文所述对大家vue.js程序设计有所帮助。

Javascript 相关文章推荐
用html5 js实现点击一个按钮达到浏览器全屏效果
May 28 Javascript
jQuery实现文本框邮箱输入自动补全效果
Nov 17 Javascript
Bootstrap每天必学之弹出框(Popover)插件
Apr 25 Javascript
浅析jquery与checkbox的checked属性的问题
Apr 27 Javascript
AngularJS 过滤器的简单实例
Jul 27 Javascript
js和jquery中获取非行间样式
May 05 jQuery
JS实现无缝循环marquee滚动效果
May 22 Javascript
AngularJs 终极购物车(实例讲解)
Nov 08 Javascript
js自定义input文件上传样式
Oct 26 Javascript
JS学习笔记之贪吃蛇小游戏demo实例详解
May 29 Javascript
解决layui动态加载复选框无法选中的问题
Sep 20 Javascript
js实现搜索提示框效果
Sep 05 Javascript
vue-cli3.0实现一个多页面应用的历奇经历记录总结
Mar 16 #Javascript
vue从零实现一个消息通知组件的方法详解
Mar 16 #Javascript
JavaScript实现动态留言板
Mar 16 #Javascript
vue中的双向数据绑定原理与常见操作技巧详解
Mar 16 #Javascript
js+canvas实现纸牌游戏
Mar 16 #Javascript
微信小程序利用button控制条件标签的变量问题
Mar 15 #Javascript
JS apply用法总结和使用场景实例分析
Mar 14 #Javascript
You might like
php自定文件保存session的方法
2014/12/10 PHP
php访问数组最后一个元素的函数end()用法
2015/03/18 PHP
PHP实现微信发红包程序
2015/08/24 PHP
利用PHP实现开心消消乐的算法示例
2017/10/12 PHP
jquery last-child 列表最后一项的样式
2010/01/22 Javascript
javascript当中的代码嗅探扩展原生对象和原型(prototype)
2013/01/11 Javascript
javascript:void(0)是什么意思示例介绍
2013/11/17 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
javascript使用prototype完成单继承
2014/12/24 Javascript
JavaScript跨浏览器获取页面中相同class节点的方法
2015/03/03 Javascript
angularjs学习笔记之完整的项目结构
2015/09/26 Javascript
js实现砖头在页面拖拉效果
2020/11/20 Javascript
利用D3.js实现最简单的柱状图示例代码
2016/12/09 Javascript
JS中利用localStorage防止页面动态添加数据刷新后数据丢失
2017/03/10 Javascript
jQuery实现带右侧索引功能的通讯录示例【附源码下载】
2018/04/17 jQuery
egg.js的基本使用和调用数据库的方法示例
2019/05/18 Javascript
如何使用 JavaScript 操作浏览器历史记录 API
2020/11/24 Javascript
python快速查找算法应用实例
2014/09/26 Python
Python中使用copy模块实现列表(list)拷贝
2015/04/14 Python
Java中重定向输出流实现用文件记录程序日志
2015/06/12 Python
浅谈function(函数)中的动态参数
2017/04/30 Python
Centos 升级到python3后pip 无法使用的解决方法
2018/06/12 Python
python海龟绘图之画国旗实例代码
2020/11/11 Python
css3实现可拖动的魔方3d效果
2019/05/07 HTML / CSS
Boston Proper官网:美国女装品牌
2017/10/30 全球购物
上海雨人软件技术开发有限公司测试题
2015/07/14 面试题
大专生自荐信
2013/10/04 职场文书
医科大学毕业生自荐信
2014/02/03 职场文书
学生鉴定评语大全
2014/05/05 职场文书
2014年冬季防火方案
2014/05/21 职场文书
法人单位适用的授权委托书
2014/09/19 职场文书
中学生检讨书1000字
2014/10/28 职场文书
幼儿园园长新年寄语
2015/08/17 职场文书
学生会2016感恩节活动小结
2016/04/01 职场文书
MySQL快速插入一亿测试数据
2021/06/23 MySQL
Vue项目打包、合并及压缩优化网页响应速度
2021/07/07 Vue.js