详解vue-cli项目中怎么使用mock数据


Posted in Javascript onMay 29, 2018

前言

注意:网上很多教程说需要在build目录下的dev-server.js文件中配置,但目前最新的vue-cli是没有dev-server.js这个文件的,因为已经被合并到webpack.dev.conf.js文件中,所以直接在该文件中配置即可

步骤

1、在根目录新建一个mock文件夹用于存在所有用于数据测试的.json文件

详解vue-cli项目中怎么使用mock数据

dir.png

posts.json

{
 "code": 200,
 "data": [
 {
  "id": 0,
  "title": "复联3大陆定档5月11日,全球最晚!!"
 },
 {
  "id": 1,
  "title": "蚁人2最新预告发布,首次展现量子领域!!"
 }
 ]
}

users.json

{
 "code": 200,
 "data": [
 {
  "id": 0,
  "nickname": "美国队长",
  "avatar": "url"
 },
 {
  "id": 1,
  "nickname": "惊奇队长",
  "avatar": "url"
 }
 ]
}

2、在build目录下找到webpack.dev.conf.js文件,编写以下代码

// mock code
const express = require('express')
const app = express()
const posts = require('../mock/posts.json') // 文章列表数据源
const users = require('../mock/users.json') // 用户列表数据源
const routes = express.Router()
app.use('/api', routes)

// 如果是post请求,那么将get改为post即可
devServer: {
 ...
 before(app){
 app.get('/api/posts', (req, res) => {
  res.json(posts)
 })
 app.get('/api/users', (req, res) => {
  res.json(users)
 })
 }
}

测试,浏览器输入http://localhost:8080/api/posts

详解vue-cli项目中怎么使用mock数据

posts.json

3、使用第三方http请求库axios进行ajax请求

命令行安装 npm install axios --save-dev,然后在/src/main.js使用axios

import axios from 'axios'
Vue.prototype.$http = axios

模拟请求代码(users同理)

created() {
 this.$http.get("http://localhost:8080/api/posts").then(res => {
 console.log(res.data)
 })
}

详解vue-cli项目中怎么使用mock数据

mock.png

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

Javascript 相关文章推荐
JSON 客户端和服务器端的格式转换
Aug 27 Javascript
jquery.simple.tree插件 更简单,兼容性更好的无限树插件
Sep 03 Javascript
Area 区域实现post提交数据的js写法
Apr 22 Javascript
javascript实现控制浏览器全屏
Mar 30 Javascript
easyui combobox开启搜索自动完成功能的实例代码
Nov 08 Javascript
node.js版本管理工具n无效的原理和解决方法
Nov 24 Javascript
基于bootstrap的选择框插件icheck
Dec 23 Javascript
js+html5实现页面可刷新的倒计时效果
Jul 15 Javascript
sortable+element 实现表格行拖拽的方法示例
Jun 07 Javascript
vue拖拽组件 vuedraggable API options实现盒子之间相互拖拽排序
Jul 08 Javascript
vue实现购物车列表
Jun 30 Javascript
JavaScript实现网页动态生成表格
Nov 25 Javascript
js统计页面上每个标签的数量实例代码
May 29 #Javascript
浅谈React的最大亮点之虚拟DOM
May 29 #Javascript
深入理解Vue Computed计算属性原理
May 29 #Javascript
javascript、php关键字搜索函数的使用方法
May 29 #Javascript
Vue路由切换时的左滑和右滑效果示例
May 29 #Javascript
Vue 组件传值几种常用方法【总结】
May 28 #Javascript
讲解vue-router之命名路由和命名视图
May 28 #Javascript
You might like
模仿OSO的论坛(二)
2006/10/09 PHP
php将时间差转换为字符串提示
2011/09/07 PHP
Laravel如何实现适合Api的异常处理响应格式
2020/06/14 PHP
javascript中xml操作实现代码
2011/11/21 Javascript
jqueyr判断checkbox组的选中(示例代码)
2013/11/08 Javascript
Node.js文件操作详解
2014/08/16 Javascript
JavaScript实现的内存数据库LokiJS介绍和入门实例
2014/11/17 Javascript
jQuery实现网站添加高亮突出显示效果的方法
2015/06/26 Javascript
深入浅析javascript立即执行函数
2015/10/23 Javascript
js实现对ajax请求面向对象的封装
2016/01/08 Javascript
js仿手机页面文件下拉刷新效果
2016/10/14 Javascript
JavaScript实现页面无操作倒计时退出
2016/10/22 Javascript
使用snowfall.jquery.js实现爱心满屏飞的效果
2017/01/05 Javascript
CSS3+JavaScript实现翻页幻灯片效果
2017/06/28 Javascript
JavaScript 程序错误Cannot use 'in' operator to search的解决方法
2017/07/10 Javascript
bootstrap多层模态框滚动条消失的问题
2017/07/21 Javascript
vue 将页面公用的头部组件化的方法
2017/12/18 Javascript
微信小程序获取音频时长与实时获取播放进度问题
2018/08/28 Javascript
ztree加载完成后显示勾选节点的实现代码
2018/10/22 Javascript
JavaScript常用工具方法封装
2019/02/12 Javascript
react+redux仿微信聊天界面
2019/06/21 Javascript
详解node登录接口之密码错误限制次数(含代码)
2019/10/25 Javascript
vue 判断页面是首次进入还是再次刷新的实例
2020/11/05 Javascript
Pycharm学习教程(5) Python快捷键相关设置
2017/05/03 Python
十个Python练手的实战项目,学会这些Python就基本没问题了(推荐)
2019/04/26 Python
HTML5 自动聚焦(autofocus)属性使用介绍
2013/08/07 HTML / CSS
使用HTML和CSS实现的标签云效果(附demo)
2021/02/03 HTML / CSS
HTC VIVE美国官网:VR虚拟现实眼镜
2018/02/13 全球购物
澳大利亚儿童鞋在线:The Trybe
2019/07/16 全球购物
Ever New美国:澳大利亚领先的女装时尚品牌
2019/11/28 全球购物
一套比较完整的软件测试人员面试题
2012/05/13 面试题
自动化系在校本科生求职信
2013/10/23 职场文书
2014年十一国庆节爱国演讲稿
2014/09/23 职场文书
入党介绍人意见怎么写
2015/06/03 职场文书
婚宴领导致辞
2015/07/28 职场文书
七年级之开学家长寄语35句
2019/09/05 职场文书