VUE开发请求本地数据的配置,旧版本dev-server.js,新版本webpack.dev.conf.js

VUE开发请求本地数据的配置,早期的vue-lic下面有dev-server.js和dev-client.js两文件,请求本地数据在dev-server.js里配置,最新的vue-webpack-template 中已经去掉了dev-server.js和dev-client.js 改用webpack.dev.conf.js代替,所以配置本地访问在webpack.dev.conf.js里配置即可。

1、旧版dev-server.js配置本地数据访问:

在const app = express()后,const compiler = webpack(webpackConfig)前配置即可,

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
var appData = require( '../data.json' )
var seller = appData.seller
var goods = appData.goods
var ratings = appData.ratings
var foods = appData.foods
var pice = appData.pice
var apiRoutes = express.Router()
 
apiRoutes.post( '/foods' , function (req, res) {
   res.json({
     errno: 0,
     data: foods
   });
})
 
apiRoutes.get( '/seller' , function (req, res) {
   res.json({
     errno: 0,
     data: seller
   });
})
 
apiRoutes.get( '/goods' , function (req, res) {
   res.json({
     errno: 0,
     data: goods
   })
})
 
apiRoutes.get( '/ratings' , function (req, res) {
   res.json({
     errno: 0,
     data: ratings
   });
})
 
apiRoutes.get( '/pice' , function (req, res) {
   res.json({
     errno: 0,
     data: pice
   });
})
app.use( '/api' ,apiRoutes)

2、新版webpack.dev.conf.js配置本地数据访问:

在const portfinder = require(‘portfinder’)后添加

?
1
2
3
4
5
6
7
8
9
//首先
const express = require( 'express' )
const app = express()
var appData = require( '../data.json' )//加载本地数据文件
var seller = appData.seller//获取对应的本地数据
var goods = appData.goods
var ratings = appData.ratings
var apiRoutes = express.Router()
app.use( '/api' , apiRoutes)
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
//然后找到devServer,在里面添加
before(app) {
   app.get( '/api/seller' , (req, res) => {
     res.json({
       errno: 0,
       data: seller
     })//接口返回json数据,上面配置的数据seller就赋值给data请求后调用
   }),
   app.get( '/api/goods' , (req, res) => {
     res.json({
       errno: 0,
       data: goods
     })
   }),
   app.get( '/api/ratings' , (req, res) => {
     res.json({
       errno: 0,
       data: ratings
     })
   })
} 有的同学说报错,不能识别before,注意看下你的配置。
?
1
 

补充说一下,有的同学配置后说不能访问,所有的修改配置都需要重新启动运行命令的:npm run dev才能生效(切记 ),还有data.json数据也不能少,就放在跟目录下跟index.html同级;data.json的部分数据:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
{
   "seller" : {
     "name" : "粥品香坊(回龙观)" ,
     "description" : "蜂鸟专送" ,
     "deliveryTime" : 38,
     "score" : 4.2,
     "serviceScore" : 4.1,
     "foodScore" : 4.3,
     "rankRate" : 69.2,
     "minPrice" : 20,
     "deliveryPrice" : 4,
     "ratingCount" : 24,
     "sellCount" : 90,
     "bulletin" : "粥品香坊其烹饪粥料的秘方源于中国千年古法,在融和现代制作工艺,由世界烹饪大师屈浩先生领衔研发。坚守纯天然、0添加的良心品质深得消费者青睐,发展至今成为粥类的引领品牌。是2008年奥运会和2013年园博会指定餐饮服务商。" ,
     "supports" : [
       {
         "type" : 0,
         "description" : "在线支付满28减5"
       },
       {
         "type" : 1,
         "description" : "VC无限橙果汁全场8折"
       },
       {
         "type" : 2,
         "description" : "单人精彩套餐"
       },
       {
         "type" : 3,
         "description" : "该商家支持发票,请下单写好发票抬头"
       },
       {
         "type" : 4,
         "description" : "已加入“外卖保”计划,食品安全保障"
       }
     ],
     "pics" : [
     ],
     "infos" : [
       "该商家支持发票,请下单写好发票抬头" ,
       "品类:其他菜系,包子粥店" ,
       "北京市昌平区回龙观西大街龙观置业大厦底商B座102单元1340" ,
       "营业时间:10:00-20:30"
     ]
   }
}

这样就可以访问本地接口:https://localhost:8080/api/seller 了

\

以上为get请求,有同学问post怎么设置,再补充下POST请求:

?
1
2
3
4
5
6
7
老版本:
apiRoutes.<strong>post</strong>( '/foods' , function (req, res) { //注意这里改为post就可以了
   res.json({
     errno: 0,
     data: foods
   });
})
?
1
2
3
4
5
6
7
新版本:
app.post( '/api/foods' , function (req, res) { // 注意这里改为post就可以了
   res.json({
     errno: 0,
     data: foods
   });
})
?
1
2
3
4
5
6
在组件里面:
created () {
  this.$http.post( 'https://localhost:8080/api/foods' ). then ((response) => {
   console.log(response)
  })
}

\

 

\原文转自:https://www.2cto.com/kf/201712/704330.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
webpack-dev-server是一个用于开发环境的工具,它提供了一个实时重载的开发服务器。通过使用命令"> webpack-dev-server --inline --progress --config build/webpack.dev.conf.js",你可以启动webpack-dev-server,其中"--inline"选项用于在浏览器中内联模式显示编译错误和警告,"--progress"选项用于在控制台中显示编译进度,"--config build/webpack.dev.conf.js"选项用于指定webpack配置文件的路径。这个配置文件包含了开发环境的相关配置信息,例如入口文件、输出路径等。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [> devwebpack-dev-server --inline --progress --config build/webpack.dev.conf.js](https://blog.csdn.net/chanyeolchichi/article/details/124688983)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [Vue运行报错webpack-dev-server --inline --progress --config build/webpack.dev.conf.js](https://blog.csdn.net/qq_18671415/article/details/109306424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [vue-cli项目根据线上环境分别打出测试包和生产包](https://download.csdn.net/download/weixin_38643141/13588313)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值