在vue项目中使用mockjs模拟接口和数据

在vue项目中使用mockjs模拟接口和数据

第一种使用方式

1、 安装引入

npm install mockjs 

npm安装之后,依赖会自动引入

2、 创建mockjs文件夹
在项目下创建一个mock文件夹,在这个文件夹下面创建index.js文件

3、往index.js中添加mock语法,例如

import Mock from 'mockjs'
 
// mock要返回的数据
var data = Mock.mock({
    
    
	// list 的值是一个数组,生成20-60个数组元素
	'list|20-60': [{
    
    
		// id 是一个自增数,起始值为 1,每次自增 1
		"id": '@increment()',
		"title": "@ctitle",
		"content": "@cparagraph",
		"add_time": "@date(yyyy-MM-dd hh:mm:ss)"
	}]
})
 
// 设置请求接口方式
Mock.mock('/api/get/user', 'get', (options) => {
    
    
	console.log(options);
	return {
    
    
		status: 200,
		message: '获取数据成功',
		test: data.list
	}
})

如果不知道mockjs的基本语法的话,可以跳到这篇文章简单看下:mockjs基本语法

4、 在main.js文件中导入创建的index.js

import '@/mock/index'

5、应用mockjs写的接口

methods: {
    
    
   getData() {
    
    
     this.$axios.get("/api/get/user").then((res) => {
    
    
       console.log(res);
     });
   },
 },
 mounted() {
    
    
   this.getData();
 },

第二种使用方式

1、安装引入

npm install mockjs
const mock = require('mockjs')

import mock from 'mockjs'

2、在src目录下创建mock文件夹,文件夹下创建一个index.js文件以及一个api文件夹,如下

src
	mock
		api
		index.js

3、在api文件夹下创建接口文件login.js
login.js

// 引入mock
import Mock from 'mockjs'

// mock模拟登录
export default{
    
    
    login:config =>{
    
    
        const {
    
    username,password} = JSON.parse(config.body)

        // 专门设置一个账号用于测试登录
        if(username === 'admin123' && password === 'admin123'){
    
    
            return {
    
    
                status:0,
                token:"bearer " + Mock.Random.guid(), // 返回token,guid类型模仿
                message:"登录成功",
            }
        }else {
    
    
            return {
    
    
                status : -1,
                message:"登录失败"
            }
        }
    }
}

4、在index.js文件下引入处理函数
index.js

扫描二维码关注公众号,回复: 14849281 查看本文章
import Mock from 'mockjs'
import login from './api/login' // 引入处理函数
// 登录接口
Mock.mock(/user\/login/g,'post',login.login)

5、在main.js中引入index.js

import './mock'

6、接口使用

axios.post('/user/login',"参数xxx").then().catch()

猜你喜欢

转载自blog.csdn.net/lalala_dxf/article/details/128373270
今日推荐