详解vue2.0模拟后台json数据


Posted in Javascript onMay 16, 2019

最近在跟着做vue2.0以上版本的一个购物平台,在涉及到模拟后台数据交互的时候,视频里讲的是通过json-server这个插件和express,由于之前的配置都是在build/dev-server.js文件夹下,在vue2.0都没有了,全部整合到了build/webpack.dev.conf.js文件里,通过不断查阅资料后终于模拟成功。

1.首先 npm install vue-resource  --save安装vue-resourse,并且在页面上引用(--save 会把依赖包名称添加到 package.json 文件 dependencies 键下,--save-dev 则添加到 package.json 文件 devDependencies 下)

详解vue2.0模拟后台json数据

2.在项目目录下添加一个xx.json,爱叫啥叫啥~~,但是里面的格式一定要是json格式。如果不确定是否符合json格式,可以点击这里使用工具校验

详解vue2.0模拟后台json数据

3.直接在webpack-dev-conf.js文件中修改

第一步:在const portfinder = require(‘portfinder')后添加

const express = require('express')
const app = express()//请求server
var appData = require('../db.json')//加载本地数据文件
var news = appData.getNewsList//获取对应的本地数据
var products = appData.getproductList
var boards = appData.getBoardList
var apiRoutes = express.Router()
app.use('/api', apiRoutes)

第二步:找到devServer,在里面加上before()方法

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('/api/news', (req, res) => {
  res.json({
   errno: 0,
   data: news
  })//接口返回json数据,上面配置的数据seller就赋值给data请求后调用
 }),
 app.get('/api/products', (req, res) => {
  res.json({
   errno: 0,
   data: products
  })
 }),
  app.get('/api/boards', (req, res) => {
  res.json({
   errno: 0,
   data: boards
  })
 })
  
  
  }
  
  
  
  
 },

4.到这里之后记得所有的修改配置都需要重新启动运行命令的:npm run dev才能生效(很重要,否则无法请求到数据)

然后在浏览器就可以请求到我们模拟的数据:

详解vue2.0模拟后台json数据

5.在create()函数中通过get请求json数据后添加到页面中

export default {
		components:{
			slideShow
		},
 
    //请求模拟的json数据
		created: function(){
			this.$http.get('api/news')
			.then((data)=>{
				this.newsList = data.data.data;
        //newsList是先在页面上定义变量,用来装载请求到的数据
			},(err)=>{
				console.log(err)
			}),
			
			this.$http.get('api/products')
			.then((data)=>{
				this.productList = data.data.data;
			},(err)=>{
				console.log(err)
			}),
			
			this.$http.get('api/boards')
			.then((data)=>{
				
				this.boardList = data.data.data;
			},(err)=>{
				console.log(err)
			})
		},

在页面上定义的变量,用来装载请求到的数据

data(){
			return {
			
				
				boardList:[
					
				],
	
				newsList:[
					
				],
				productList:{
					
				}
			}
		},

6.在页面上调用

详解vue2.0模拟后台json数据

页面效果如下:

详解vue2.0模拟后台json数据

以上所述是小编给大家介绍的vue2.0模拟后台json数据详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
再谈javascript原型继承
Nov 10 Javascript
jquery实现点击弹出带标题栏的弹出层(从右上角飞入)效果
Sep 19 Javascript
jquery 重写 ajax提交并判断权限后 使用load方法报错解决方法
Jan 19 Javascript
Vue 单文件中的数据传递示例
Mar 21 Javascript
Bootstrap实现各种进度条样式详解
Apr 13 Javascript
JS匹配日期和时间的正则表达式示例
May 12 Javascript
Angular使用 ng-img-max 调整浏览器中的图片的示例代码
Aug 17 Javascript
vue父组件向子组件(props)传递数据的方法
Jan 02 Javascript
基于vue.js无缝滚动效果
Jan 25 Javascript
生产制造追溯系统之再说条码打印
Jun 03 Javascript
jquery 键盘事件 keypress() keydown() keyup()用法总结
Oct 23 jQuery
js实现随机div颜色位置 类似满天星效果
Oct 24 Javascript
详解Vue-Router源码分析路由实现原理
May 15 #Javascript
微信小程序select下拉框实现效果
May 15 #Javascript
详解js常用分割取字符串的方法
May 15 #Javascript
elementUI table表格动态合并的示例代码
May 15 #Javascript
详解VUE调用本地json的使用方法
May 15 #Javascript
微信小程序的mpvue框架快速上手指南
May 15 #Javascript
解决微信小程序云开发中获取数据库的内容为空的方法
May 15 #Javascript
You might like
PHP 第三节 变量介绍
2012/04/28 PHP
关于php程序报date()警告的处理(date_default_timezone_set)
2013/10/22 PHP
php实现word转html的方法
2016/01/22 PHP
php图片上传类 附调用方法
2016/05/15 PHP
php fread读取文件注意事项
2016/09/24 PHP
thinkphp分页集成实例
2017/07/24 PHP
激活 ActiveX 控件
2006/10/09 Javascript
javascript 动态数据下的锚点错位问题解决方法
2008/12/24 Javascript
javascript 短路法代码精简
2009/08/20 Javascript
JavaScript内核之基本概念
2011/10/21 Javascript
express的中间件cookieParser详解
2014/12/04 Javascript
jQuery position() 函数详解以及jQuery中position函数的应用
2015/12/14 Javascript
使用jQuery的easydrag插件实现可拖动的DIV弹出框
2016/02/19 Javascript
后端接收不到AngularJs中$http.post发送的数据原因分析及解决办法
2016/07/05 Javascript
jQuery包裹节点用法完整示例
2016/09/13 Javascript
javaScript语法总结
2016/11/25 Javascript
老生常谈js数据类型
2017/08/03 Javascript
js实现以最简单的方式将数组元素添加到对象中的方法
2017/12/20 Javascript
Vue cli+mui 区域滚动的实例代码
2018/01/25 Javascript
Vue监听事件实现计数点击依次增加的方法
2018/09/26 Javascript
Vue实现按钮级权限方案
2019/11/21 Javascript
[02:02:38]VG vs Mineski Supermajor 败者组 BO3 第一场 6.6
2018/06/07 DOTA
python编程线性回归代码示例
2017/12/07 Python
Python实现爬虫爬取NBA数据功能示例
2018/05/28 Python
浅谈Python中的bs4基础
2018/10/21 Python
pytorch中使用cuda扩展的实现示例
2020/02/12 Python
关于python3.9安装wordcloud出错的问题及解决办法
2020/11/02 Python
重构Python代码的六个实例
2020/11/25 Python
HTML5 标准将把互联网视频扔回到黑暗时代
2010/02/10 HTML / CSS
印度在线购买电子产品网站:Croma
2020/01/02 全球购物
char型变量中能不能存贮一个中文汉字
2015/07/08 面试题
打架检讨书2000字
2014/02/22 职场文书
拉歌口号大全
2014/06/13 职场文书
优秀团员事迹材料
2014/12/25 职场文书
银行求职自荐信范文
2015/03/04 职场文书
SQL优化老出错,那是你没弄明白MySQL解释计划用法
2021/11/27 MySQL