详解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 相关文章推荐
获取服务器传来的数据 用JS去空格的正则表达式
Mar 26 Javascript
JS实现图片翻书效果示例代码
Sep 09 Javascript
jquery隔行换色效果实现方法
Jan 15 Javascript
JavaScript事件委托实例分析
May 26 Javascript
JS模拟键盘打字效果的方法
Aug 05 Javascript
JavaScript实现简单的tab选项卡切换
Jan 05 Javascript
Js与Jq获取浏览器和对象值的方法
Mar 18 Javascript
Active控件问题小结(附解决办法)
Jun 09 Javascript
js实现时间轴自动排列效果
Mar 09 Javascript
Angular排序实例详解
Jun 28 Javascript
深入koa-bodyparser原理解析
Jan 16 Javascript
JavaScript大数相加相乘的实现方法实例
Oct 18 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使用imagick模块实现图片缩放、裁剪、压缩示例
2014/04/17 PHP
Yii2使用小技巧之通过 Composer 添加 FontAwesome 字体资源
2014/06/22 PHP
php图片处理函数获取类型及扩展名实例
2014/11/19 PHP
PHP保存带BOM文件的方法
2015/02/12 PHP
PHP的伪随机数与真随机数详解
2015/05/27 PHP
php实现的递归提成方案实例
2015/11/14 PHP
php 解决substr()截取中文字符乱码问题
2016/07/18 PHP
php中preg_replace_callback函数简单用法示例
2016/07/21 PHP
jQuery学习笔记 获取jQuery对象
2012/09/19 Javascript
JS特权方法定义作用以及与公有方法的区别
2013/03/18 Javascript
node.js中的定时器nextTick()和setImmediate()区别分析
2014/11/26 Javascript
js使用cookie记录用户名的方法
2015/11/26 Javascript
javascript数组去重小结
2016/03/07 Javascript
jQuery中通过ajax调用webservice传递数组参数的问题实例详解
2016/05/20 Javascript
基于Bootstrap的后台管理面板 Bootstrap Metro Dashboard
2016/06/17 Javascript
AngularJS通过$http和服务器通信详解
2016/09/21 Javascript
Vue分页组件实例代码
2017/04/17 Javascript
vue2.0实现移动端的输入框实时检索更新列表功能
2018/05/08 Javascript
详解如何在vue项目中使用lodop打印插件
2018/09/27 Javascript
微信小程序input抖动问题的修复方法
2021/03/03 Javascript
Python列表生成器的循环技巧分享
2015/03/06 Python
解决Python字典写入文件出行首行有空格的问题
2017/09/27 Python
Python 多线程不加锁分块读取文件的方法
2018/12/11 Python
python数据归一化及三种方法详解
2019/08/06 Python
docker-py 用Python调用Docker接口的方法
2019/08/30 Python
python跨文件使用全局变量的实现
2020/11/17 Python
利用python爬取有道词典的方法
2020/12/08 Python
英国户外装备和冒险服装零售商:alloutdoor
2018/01/30 全球购物
纽约州一群才华横溢的金匠制作而成:Hearth Jewelry
2019/03/22 全球购物
乌克兰在线电子产品商店:MTA
2019/11/14 全球购物
Orlebar Brown官网:设计师泳裤和泳装
2020/12/08 全球购物
C/C++程序员常见面试题一
2012/12/08 面试题
自考毕业自我鉴定范文
2013/10/27 职场文书
岗位职责定义及内容
2013/11/08 职场文书
机械制造专业个人的自我评价
2013/12/28 职场文书
CSS3 实现NES游戏机的示例代码
2021/04/21 HTML / CSS