在vue-cli下读取模拟数据请求服务器
写此记录时vue脚手架的webpack是3.6.0
此文章方法亦可用于vue-cli3,直接在vue.config.js里面添加
本记录使用vue-resource,先安装:
cnpm install vue-resource --save
在入口js文件中:
import VueResource from 'vue-resource' Vue.use(VueResource)
别忘了事先创建一个用于模拟请求的json文件:
{
"appData":[
{"name":"vbyzc","age":"30"},
{"name":"黄浮驴","age":"30"}
]
}
在webpack.dev.conf.js中,找到 const portfinder = require('portfinder') 这一行下面添加:
/*创建一个虚拟api接口服务器*/
const express = require('express')
const app = express()
var appData = require('../db.json')
var apiRoutes = express.Router()
/*
查阅了一下资料,发现app.use('/api',apiRoutes) 这句可以不要,直接使用get来设置也可以
路由规则是app.use(path,router)定义的,router代表一个由express.Router()创建的对象,在路由对象中可定义多个路由规则。可是如果我们的路由只有一条规则时,可直接接一个回调作为简写,也可直接使用app.get或app.post方法。
即当一个路径有多个匹配规则时,使用app.use,否则使用相应的app.method(get、post)
*/
然后在devServer中(最下面算了)添加一项:
before(apiRoutes){
//这里的apiRoutes换成上面的app也可以
//get对中间件express服务器的router进行配置(粗俗理解是用于注册路由)
//注册一个名为appData的虚拟路径
apiRoutes.get('/api/MyappData',(req,res) =>{
res.json({
//返回一个对象,appData是上面require导入的一个本地json文件
data:appData
})
})
}
这样同域名下的虚拟api服务器也建好了,可以直接访问htttp://localhost:端口/api/MyappData
最后,就可以在vue中请求数据了
export default {
name: 'App',
data(){
return {
apidata :[]
}
},
created : function(){
this.$http.get('/api/MyappData')
.then((response) => {
//下面的data,是创建express服务器时创建的对象键名,appData是我们json中的对象键名
//不像jquery的ajax会自动格式化成json,所以还要调用JSON.parse来转换
this.apidata = JSON.parse(response.bodyText).data.appData;
//console.log(JSON.parse(response.bodyText).data);
},(req) => {
//我也不知这个干嘛用的
console.log(req)
})
}
}
下回使用axios试验一下
在vue-cli下读取模拟数据请求服务器的更多相关文章
- 【vue】生成接口模拟数据
目录 方案一:自定义模拟数据 Step1 创建json文件 Step2 在 vue.config.js 中配置 Step3 在组件中使用 (方式一) Step3 封装api (方式二) Step4 在 ...
- 02 Vue之vue对象属性功能&axios数据请求实现
1.过滤器的声明和使用 过滤器,就是vue允许开发者自定义的文本格式化函数,可以使用在两个地方:输出内容和操作数据中. 定义过滤器的方式有两种. 1 使用Vue.filter()进行全局定义 2 在v ...
- 如何在Vue中使用Mockjs模拟数据的增删查改
之前一直使用json-server在前端开发时,搭建本地数据接口测试,但有时又需要将做好的项目放于 github page上做项目演示.在本地时,json server很好使用,但一旦放在github ...
- shell下读取文件数据
参考:https://www.imzcy.cn/1553.html while和for对文件的读取是有区别的: 1. for对文件的读是按字符串的方式进行的,遇到空格什么后,再读取的数据就会换行显示 ...
- vue 使用mock来模拟数据
首先,需要安装mock npm install mockjs --save-dev 在main.js中引入mock mock文件写法如下: const Mock = require('mockjs') ...
- php模拟数据请求
php:模拟后台接受数据的步骤<?php> 1.连接数据库 $host="localhost"; $uname="root"; $upwd=&quo ...
- vue+mock.js+element-ui模拟数据搞定分页
效果如图: 前提是搭好vue前端框架,npm install mockjs引入mock.js 当前页全部代码如下,其他有关element-ui的引入未提到,仅作参考用 <!-- 用户管理 --& ...
- mockjs模拟数据请求
一般项目的方法 <html> <head> <script> <script src="http://requirejs.org/docs/rele ...
- Flume下读取kafka数据后再打把数据输出到kafka,利用拦截器解决topic覆盖问题
1:如果在一个Flume Agent中同时使用Kafka Source和Kafka Sink来处理events,便会遇到Kafka Topic覆盖问题,具体表现为,Kafka Source可以正常从指 ...
随机推荐
- Notes of Daily Scrum Meeting(12.18)
前期落下的进度我们会在周六周日赶一下,在编译课程设计中期测试之后集中处理项目中的问题. 今天的任务总结如下: 团队成员 今日团队工作 陈少杰 调试后端连接的部分,寻找bug 王迪 测试搜索功能,修改b ...
- Linux内核分析(第二周)
操作系统是如何工作的? 一.总结:三大法宝 1.存储程序计算机 + 函数调用堆栈 + 中断机制 2.堆栈:C语言程序运行时候必须的一个记录调用路径和参数的空间(函数调用框架/提供局部变量/传递参数/保 ...
- 第二个Sprint
能够实现三个数,两个操作符的四则运算.
- ElasticSearch 5.6.1 安装 Kibana、X-Pack和head
前面已经有写过ElasticSearch和iK的安装了这里就不在所了. 安装Kiabna 在下载tar包的时候需要注意下一安装的es版本号,按照官网的说明版本是对应一致的. https://www.e ...
- php 中间件
PHP ::双冒号,意为静态成员的访问形式. 中间件$request 速查表:
- Alpha冲刺——day3
Alpha冲刺--day3 作业链接 Alpha冲刺随笔集 github地址 团队成员 031602636 许舒玲(队长) 031602237 吴杰婷 031602220 雷博浩 031602634 ...
- DataGridView列标题居中,内容居中
//列标题居中 dataGridView1.ColumnHeadersDefaultCellStyle.Alignment = DataGridViewContentAlignment.MiddleC ...
- 【刷题】清橙 A1339 JZPLCM(顾昱洲)
试题来源 2012中国国家集训队命题答辩 问题描述 给定一长度为n的正整数序列a,有q次询问,每次询问一段区间内所有数的lcm(即最小公倍数).由于答案可能很大,输出答案模1000000007. 输入 ...
- 织梦dedecms搜索页加上序列号autoindex
在我们做织梦搜索页模板的时候经常会使用到autoindex标签.那么怎么才能实现搜索页可以使用呢?下面给大家分享下解决方法: 打开文件:include/arc.searchview.class.php ...
- UML类图学习笔记
http://note.youdao.com/noteshare?id=d5af220db7081dda73511fcb7b4da390