vue-cli2结合axios使用mock

一直没找到如何简便的配置mock,自己总结的配置流程。

0.我是用的是vue-cli2创建的项目,下边是创建后的目录

vue-cli2结合axios使用mock_第1张图片
微信图片_20191225142619.png

mock文件夹是结构目录生成后创建的。

1.先将axios和mock下载下来

npm i axios --save
npm i --save-dev webpack mockjs-webpack-plugin

2.下载下来后找到src目录下的main.js引入axios

vue-cli2结合axios使用mock_第2张图片
微信图片_20191225143707.png
import axios from 'axios'
Vue.prototype.$http = axios;

3.axios引入后开始配置mock如下图所示

vue-cli2结合axios使用mock_第3张图片
微信图片_20191225144338.png
vue-cli2结合axios使用mock_第4张图片
微信图片_20191225144525.png
//找到build下的webpack.dev.config.js引入mockjs-webpack-plugin
const MockjsWebpackPlugin = require("mockjs-webpack-plugin")
//配置plugins
    // 插件的功能是根据配置文件,起一个指定端口的server,将接口请求指向json文件
    new MockjsWebpackPlugin({
      // mock数据的存放路径
      path: path.join(__dirname, "../mock"),
      // 配置mock服务的端口,避免与应用端口冲突
      port: 3000
    })
devServer是在plugins外面的
  // 配置代理,这里的代理为webpack自带功能
  devServer: {
    // 应用端口,避免与mock服务端口冲突
    port: 5001,
    proxy: {
      // 配置匹配服务的url规则,以及其代理的服务地址,即mock服务的地址
      "/": "http://localhost:3000/"
    }
  }

4.然后在mock文件夹创建一个data.json文件(名字随意取)

/**
 * Json data file
 *
 * @url /data
 */
 {
    "code": 0,
    "result|5-10": [
      {
        "uid|+1": 1,
        "name": "@name",
        "email": "@email"
      }
    ]
  }
头注释不能删,至于为什么我还没研究明白。。。

5.创建好后重启(npm run dev)一下便可以在地址栏尝试请求

vue-cli2结合axios使用mock_第5张图片
微信图片_20191225145456.png

6.无误后就可以开始干活了。

vue-cli2结合axios使用mock_第6张图片
微信图片_20191225145848.png

vue-cli2结合axios使用mock_第7张图片
微信图片_20191225145856.png

你可能感兴趣的:(vue-cli2结合axios使用mock)