继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

使用vue-cli加载不到dev-server.js的数据mock配置

达令说
关注TA
已关注
手记 336
粉丝 22
获赞 120

原来的vue-cli 在 vue init webpack 文件名之后,在build目录下会生成dev-server.js文件,可以在页面请求本地数据的时候使用。但是最新版本的vue中,并没有找到这个文件。
因为最新版本的vue-cli已经放弃dev-server.js,只需在webpack.dev.conf.js配置就行

处理

我们可以在webpack.dev.conf.js里面进行相关配置

在const portfinder = require(‘portfinder’)后添加
const express = require('express')        //引入expressconst app = express()              
var appData = require('../data.json')      //本地的数据源var goods = appData.goods                 //取得特定数据var seller = appData.sellervar ratings = appData.ratingsvar apiRoutes = express.Router()     //创建路由 app.use('/api', apiRoutes)

https://img.mukewang.com/5d58ac270001be3306350402.png

image.png

找到devServer,在里面添加
//添加相关路由before (app) {
      app.get('/api/seller', (req, res) => {
        res.json({
          errno: 0,
          data: seller
        })
      })
      app.get('/api/goods', function (req, res) {
        res.json({
          errno: 0,
          data: goods
        })
      })
      app.get('/api/ratings', function (req, res) {
        res.json({
          errno: 0,
          data: ratings
        })
      })
    }
  },

https://img1.mukewang.com/5d58ac2c0001b3fc06760909.png

image.png

然后npm run dev,一定要重启 一下就可以http://localhost:8080/api/goods 访问到你要的数据了

https://img.mukewang.com/5d58ac2e000115b408920832.png

image.png

旧版对比

旧版dev-server.js配置本地数据访问:
在const app = express()后,const compiler = webpack(webpackConfig)前配置就可以

var appData = require('../data.json')var seller = appData.seller 
var goods = appData.goods 
var ratings = appData.ratings 
var foods = appData.foods  
var apiRoutes = express.Router() 
apiRoutes.get('/test', function (req, res) { 
  res.json({ errno: 0, data:test })
}) 
app.use('/api',apiRoutes)



作者:阿r阿r
链接:https://www.jianshu.com/p/16559c65e050


打开App,阅读手记
1人推荐
发表评论
随时随地看视频慕课网APP