详解Vue CLI 3.0脚手架如何mock数据


Posted in Javascript onNovember 23, 2018

前后端分离的开发模式已经是目前前端的主流模式,至于为什么会前后端分离的开发我们就不做过多的阐述,既然是前后端分离的模式开发肯定是离不开前端的数据模拟阶段。

我们在开发的过程中,由于后台接口的没有完成或者没有稳定之前我们都是采用模拟数据的方式去进行开发项目,这样会使我们的前后端会同时的进行,提高我们的开发效率。

因为最近自己在自学 Vue 也在自己撸一个项目,肯定会遇到使用数据的情况,所以就想着如何在前端做一些 mock 数据的处理,因为自己的项目使用的是 vue/cli 3.0 与 vue/cli 2.0 的使用有一些的不同,所以在这里记录一下。

注意:本文主要说的是如何配置本地静态文件的 mock 数据的方式

首先我们来说一说vue/cli 3.0 与 2.0 的一些不同:

  • 3.0 移除了 static 文件目录,新增了 public 目录,这个目录下的静态资源不会经过 webpack 的处理,会被直接拷贝,所以我们能够直接访问到该目录下的资源。
  • 3.0 移除了 config、build 等配置目录,如果需要进行相关配置我们需要在根目录下创建 vue.config.js 进行配置即可。

2.0 的文件结构

详解Vue CLI 3.0脚手架如何mock数据

3.0 的文件结构

详解Vue CLI 3.0脚手架如何mock数据

可以看到 3.0 版本的脚手架在项目结构上精简了很多,看上去没有那么的繁琐。接下来我就进行 mock 数据的配置,再说 3.0 之前,我们先看看 2.0 的时候我们都是怎么使用静态数据文件进行 mock 的。

2.0 配置

首先,在这个版本是只有我们的 static 目录下的文件是可以被访问到的,所以我们就把静态文件放入该目录下。

// 静态数据存放的位置
static/mock/home.json

我们启动项目之后一般项目会启动在 8080 端口,如果不是修改下对应端口号即可,我们访问下面地址:http://localhost:8080/static/mock/index.json

我们可以看到我们的数据是可以请求到的,之后我们只需要在项目中 config/index.js 添加如下属性:

dev: {
  // Paths fiddler charles
  assetsSubDirectory: 'static',
  assetsPublicPath: '/',
  proxyTable: {
   '/api': {
    target: 'http://localhost:8080',
    pathRewrite: {
     '^/api': '/static/mock'
    }
   }
  }
}

之后我们在项目中使用即可,我们就能获取我们需要的数据。

axios
 .get('/api/index.json')
 .then(this.handler)

3.0 配置

因为 static 目录移除,我们把静态文件放入 public 文件下。

// 静态数据存放的位置
public/mock/home.json

和上面一样,启动项目后我们看看数据能不能正常被访问。http://localhost:8080/mock/home.json

之后,不同的地方在于,我们需要手动创建一个 vue.config.js 文件放在根目录下。

module.exports = {
 devServer: {
  proxy: {
   '/api': {
    target: 'http://localhost:8080',
    changeOrigin: true,
    pathRewrite: {
     '^/api': '/mock'
    }
   }
  }
 }
}

配置完成之后,我们也是和上述一样,在项目中直接访问数据即可。

axios
 .get('/api/home.json')
 .then(this.handler)

总结

以上我们就学会了如何在 vue/cli 3.0 的项目中进行 mock 数据,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
css值转换成数值请抛弃parseInt
Oct 24 Javascript
原生js制作简单的数字键盘
Apr 24 Javascript
javascript+HTML5的canvas实现七夕情人节3D玫瑰花效果代码
Aug 04 Javascript
利用JS生成博文目录及CSS定制博客
Feb 10 Javascript
JavaScript模拟数组合并concat
Mar 06 Javascript
mongoose更新对象的两种方法示例比较
Dec 19 Javascript
轻量级富文本编辑器wangEditor结合vue使用方法示例
Oct 10 Javascript
vue-cli3.0+element-ui上传组件el-upload的使用
Dec 03 Javascript
详解新手使用vue-router传参时注意事项
Jun 06 Javascript
使用webpack搭建vue项目及注意事项
Jun 10 Javascript
在vue中配置不同的代理同时访问不同的后台操作
Sep 11 Javascript
Vue切换Tab动态渲染组件的操作
Sep 21 Javascript
详解js静态检查工具eslint配置文件
Nov 23 #Javascript
详解小程序不同页面之间通讯的解决方案
Nov 23 #Javascript
创建echart多个联动的示例代码
Nov 23 #Javascript
详解Angular模板引用变量及其作用域
Nov 23 #Javascript
vue使用better-scroll实现下拉刷新、上拉加载
Nov 23 #Javascript
详解Vue2.0组件的继承与扩展
Nov 23 #Javascript
angular4自定义表单控件[(ngModel)]的实现
Nov 23 #Javascript
You might like
PHP统计nginx访问日志中的搜索引擎抓取404链接页面路径
2014/06/30 PHP
php提高网站效率的技巧
2015/09/29 PHP
php使用ffmpeg获取视频信息并截图的实现方法
2016/05/03 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
在laravel框架中使用model层的方法
2019/10/08 PHP
定义select的边框颜色
2008/04/28 Javascript
复制本贴标题和地址的js代码
2008/07/01 Javascript
JavaScript 在线压缩和格式化收藏
2009/01/16 Javascript
使用JQuery FancyBox插件实现图片展示特效
2015/11/16 Javascript
分享JS代码实现鼠标放在输入框上输入框和图片同时更换样式
2016/09/01 Javascript
Bootstrap幻灯片轮播图支持触屏左右手势滑动的实现方法
2016/10/13 Javascript
AngularJS自定义指令之复制指令实现方法
2017/05/18 Javascript
jQuery+Ajax实现用户名重名实时检测
2017/06/01 jQuery
BootStrap Table前台和后台分页对JSON格式的要求
2017/06/28 Javascript
基于JavaScript实现简单的音频播放功能
2018/01/07 Javascript
vue2 设置router-view默认路径的实例
2018/09/20 Javascript
JavaScript的词法结构精华篇
2018/10/17 Javascript
小程序hover-class点击态效果实现
2019/02/26 Javascript
vue自定义键盘信息、监听数据变化的方法示例【基于vm.$watch】
2019/03/16 Javascript
vue 地区选择器v-distpicker的常用功能
2019/07/23 Javascript
微信小程序如何连接Java后台
2019/08/08 Javascript
python制作最美应用的爬虫
2015/10/28 Python
Python2包含中文报错的解决方法
2018/07/09 Python
pycharm 取消默认的右击运行unittest的方法
2018/11/29 Python
python实现ip地址查询经纬度定位详解
2019/08/30 Python
django创建超级用户时指定添加其它字段方式
2020/05/14 Python
python文件及目录操作代码汇总
2020/07/08 Python
安装pyecharts1.8.0版本后导入pyecharts模块绘图时报错: “所有图表类型将在 v1.9.0 版本开始强制使用 ChartItem 进行数据项配置 ”的解决方法
2020/08/18 Python
Html5之title吸顶功能
2018/06/04 HTML / CSS
香蕉共和国Banana Republic官网:美国GAP旗下偏贵族风格服饰品牌
2016/11/21 全球购物
英国旅游额外服务市场领导者:Holiday Extras(机场停车场、酒店、接送等)
2017/10/07 全球购物
探亲邀请信范文
2014/01/30 职场文书
税务会计岗位职责
2014/02/18 职场文书
重大事项社会稳定风险评估方案
2014/06/15 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
2016年党支部公开承诺书
2016/03/25 职场文书