详解vue-cli中模拟数据的两种方法


Posted in Javascript onJuly 03, 2018

详解vue-cli中模拟数据的两种方法 

在main.js中引入vue-resource模块,Vue.use(vueResource).

详解vue-cli中模拟数据的两种方法 

1.使用json-server(不能用post请求)

接下来找到build目录下的webpack.dev.conf.js文件,在const portfinder = require('portfinder')后面引入json-server.

/*引入json-server*/
const jsonServer = require('json-server')
/*搭建一个server*/
const apiServer = jsonServer.create()
/*将db.json关联到server*/
const apiRouter = apiServer.router('db.json')
const middlewares = jsonServer.defaults()\
apiServer.use(apiRouter)
apiServer.use(middlewares)
/*监听端口*/
apiServer.listen(3000,(req,res)=>{
 console.log('jSON Server is running') 
})

现在重启服务器后浏览器地址栏输入localhost:3000能进入如下页面则说明json server启动成功了

详解vue-cli中模拟数据的两种方法 

现在找到config文件夹下的index.js文件,在dev配置中找到proxyTable:{} 并在其中配置

'/api':{
  changeOrigin:true, //示范允许跨域
  target:"http://localhost:3000", //接口的域名
  pathRewrite:{
    '^/api':'' //后面使用重写的新路径,一般不做更改
  }
}

现在可以使用localhost:8080/api/apiName 请求json数据了

详解vue-cli中模拟数据的两种方法 

在项目中通过resource插件进行ajax请求

data (){}前使用钩子函数created:function(){

this.$http.get('/api/newsList')
    .then(function(res){
      this.newsList = res.data //赋值给data中的newsList
    },function(err){
      console.log(err)
    })
}

详解vue-cli中模拟数据的两种方法 

2.使用express(可以使用post请求)

在项目中新建routes文件并在其中新建api.js,内容如下:

const express = require('express')
const router = express.Router()
const apiData = require('../db.json')
router.post('/:name',(req,res)=>{
  if(apiData[req.params.name]){
    res.json({
      'error':'0',
      data:apiData[req.params.name]
    })
  }else{
    res.send('no such a name')
  }
})

接下来找到build目录下的webpack.dev.conf.js文件,在const portfinder = require('portfinder')后面引入express,如下:

const express = require('express')
 const app = express()
 const api = require('../routes/api.js')
 app.use('/api',api)
 app.listen(3000)

现在找到config文件夹下的index.js文件,在dev配置中找到proxyTable:{} 并在其中配置

'/api':{
  changeOrigin:true, //示范允许跨域
  target:"http://localhost:3000", //接口的域名
  pathRewrite:{
    '^/api':'/api' //后面使用重写的新路径,一般不做更改
  }
}

重启之后,便可以post请求访问数据了.

总结

以上所述是小编给大家介绍的vue-cli中模拟数据的两种方法,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
js获取变量
Aug 24 Javascript
单元选择合并变色示例代码
May 26 Javascript
Node.js中HTTP模块与事件模块详解
Nov 14 Javascript
jQuery+AJAX实现遮罩层登录验证界面(附源码)
Sep 13 Javascript
JavaScript实现自动生成网页元素功能(按钮、文本等)
Nov 21 Javascript
JS判断是否长按某一键的方法
Mar 02 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
Dec 14 Javascript
js通过keyCode值判断单击键盘上某个键,然后触发指定的事件方法
Feb 19 Javascript
vue 本地环境跨域请求proxyTable的方法
Sep 19 Javascript
使用原生js编写一个简单的框选功能方法
May 13 Javascript
vue2.0+SVG实现音乐播放圆形进度条组件
Sep 21 Javascript
vue Treeselect 树形下拉框:获取选中节点的ids和lables操作
Aug 15 Javascript
echarts同一页面中四个图表切换的js数据交互方法示例
Jul 03 #Javascript
基于React+Redux的SSR实现方法
Jul 03 #Javascript
VUE 3D轮播图封装实现方法
Jul 03 #Javascript
vue.js轮播图组件使用方法详解
Jul 03 #Javascript
Vue iview-admin框架二级菜单改为三级菜单的方法
Jul 03 #Javascript
解析vue data不可以使用箭头函数问题
Jul 03 #Javascript
详解Vue SPA项目优化小记
Jul 03 #Javascript
You might like
php封装的smarty类完整实例
2016/10/19 PHP
PHP7下协程的实现方法详解
2017/12/17 PHP
关于B/S判断浏览器断开的问题讨论
2008/10/29 Javascript
保证JavaScript和Asp、Php等后端程序间传值编码统一
2009/04/17 Javascript
js跑步算法的实现代码
2013/12/04 Javascript
jquery动态添加option示例
2013/12/30 Javascript
JavaScript中一个奇葩的IE浏览器判断方法
2014/04/16 Javascript
JavaScript事件委托用法分析
2015/01/24 Javascript
不同编码的页面表单数据乱码问题解决方法
2015/02/15 Javascript
详解jQuery UI库中文本输入自动补全功能的用法
2016/04/23 Javascript
VUEJS实战之构建基础并渲染出列表(1)
2016/06/13 Javascript
原生js实现jquery函数animate()动画效果的简单实例
2016/08/21 Javascript
Vue实现调节窗口大小时触发事件动态调节更新组件尺寸的方法
2018/09/15 Javascript
jQuery事件多次绑定与解绑问题实例分析
2019/02/19 jQuery
对TypeScript库进行单元测试的方法
2019/07/18 Javascript
vuex根据不同的用户权限展示不同的路由列表功能
2019/09/20 Javascript
vue项目使用$router.go(-1)返回时刷新原来的界面操作
2020/07/26 Javascript
动态实现element ui的el-table某列数据不同样式的示例
2021/01/22 Javascript
[03:07]DOTA2英雄基础教程 冰霜诅咒极寒幽魂
2013/12/06 DOTA
Python中关键字is与==的区别简述
2014/07/31 Python
详解Django框架中用context来解析模板的方法
2015/07/20 Python
Python引用模块和查找模块路径
2016/03/17 Python
Django使用Mysql数据库已经存在的数据表方法
2018/05/27 Python
Python 实现「食行生鲜」签到领积分功能
2018/09/26 Python
Python常见反爬虫机制解决方案
2020/06/01 Python
python可视化 matplotlib画图使用colorbar工具自定义颜色
2020/12/07 Python
为2021年的第一场雪锦上添花:用matplotlib绘制雪花和雪景
2021/01/05 Python
2014年圣诞节倒计时网页的制作过程
2014/12/05 HTML / CSS
DataList 能否分页,请问如何实现?
2015/05/03 面试题
某科技软件测试面试题
2013/05/19 面试题
业务主管岗位职责
2013/11/20 职场文书
你懂得怎么写自荐信吗?
2013/12/27 职场文书
关于运动会广播稿300字
2014/10/05 职场文书
国防教育标语
2014/10/08 职场文书
2015年家长学校工作总结
2015/04/22 职场文书
宾馆安全管理制度
2015/08/06 职场文书