Vue---mock.js 使用
2024-09-01 12:16:55
mockjs 概述
在我们的生产实际中,后端的接口往往是较晚才会出来,并且还要写接口文档,于是我们的前端的许多开发都要等到接口给我们才能进行,这样对于我们前端来说显得十分的被动,于是有没有可以制造假数据来模拟后端接口呢,答案是肯定的。应该有人通过编写json文件来模拟后台数据,但是很局限,比如增删改查这些接口怎么实现呢,于是今天我们来介绍一款非常强大的插件Mock.js,可以非常方便的模拟后端的数据,也可以轻松的实现增删改查这些操作。
mock.js官网
引入mockjs
npm install mockjs
安装完成之后去查看 package.json 如果 "mockjs": "^1.0.1-beta3" 说明安装成功
在src目录下 新建一个mock.js文件
简单使用
(1)、首先在mock.js文件下
const Mock = require('mockjs') const Random = Mock.Random const produceNewsData = function(){
let articles = []
for(let i = 0;i<100;i++){
let data = {
id:i,
name:Random.first(),
age:Random.integer(20, 100),
sex:'M',
birthday:Random.date()
}
articles.push(data)
}
return{
articles:articles
}
} const getChange = function(){
return{
articles:{
resCode:0,
errmsg:'你好呀'
}
}
} Mock.mock('/api/getList','get',produceNewsData)
Mock.mock('/api/getChange','get',getChange)
(2)、在main.js中引入
require('./mock')
(3)、新建一个页面
<template>
<div>
<h1>主页</h1>
<el-button type="primary" @click="export_Excel">生成表格</el-button> <el-table :data="tableData" border fit highlight-current-row style="width: 100%;text-align: center;">
<el-table-column prop="id" label="ID" width="180" align="center">
<template slot-scope="scope">
<span v-if="scope.row.id==1">停用</span>
<span v-else-if="scope.row.id==2">过期</span>
<span v-else-if="scope.row.id==3">作废</span>
<span v-else="scope.row.id>3">{{scope.row.id}}</span>
</template>
</el-table-column>
<el-table-column prop="name" label="姓名" width="180" align="center">
</el-table-column>
<el-table-column prop="age" label="年龄" width="180" align="center">
</el-table-column>
<el-table-column prop="sex" label="性别" width="180" align="center">
</el-table-column>
<el-table-column prop="birthday" label="生日" width="180" align="center">
</el-table-column>
<el-table-column label="编辑" align="center">
<template slot-scope="scope">
<el-button>编辑</el-button>
<el-button @click="cli">点击</el-button>
</template>
</el-table-column>
</el-table> </div> </template> <script>
export default {
data() {
return {
tableData: null
}
},
methods: {
cli() {
this.axios.get('/api/getChange').then((response) => {
console.log(response.data.articles);
})
}
}, created() {
this.axios.get('/api/getList').then((response) => {
console.log(response.data.articles);
this.tableData = response.data.articles;
})
}
}
</script> <style> </style>
运行结果
最新文章
- java基础之 多态
- 我的第一篇Markdown语法博客
- Java深入 - Java 内存分配和回收机制
- mutex与semaphore的区别
- 创建 kylin Module/Cube
- 前端引擎初步设计稿 -通过配置生成动态页面 ,LandaSugar平台 .NET-C#-MVC
- Mac terminal从bash切换到zsh
- jQuery中对属性的增删改查
- Delphi日期时间 UNIX
- C++primer 阅读点滴记录(二)
- Badge分析&;如何逼死处女座
- Qt - 与众不同的电子时钟
- 对arm指令集的疑惑,静态库运行,编译报错等问题
- Python学习笔记(九)
- 由浅入深SCF无服务器云函数实践
- UNIX网络编程——非阻塞connect
- 创建您的 ActiveReports Web端在线报表设计器
- Eclipse插件安装springBoot
- 企业建立成功 DevOps 模式所需应对的5个挑战
- java 同步 synchronized
热门文章
- 【ADO.NET基础】——数据库连接
- Angular template ng-template/container/content
- OKR群:为什么说每个程序员都应该有自己的个人OKR
- win10 cnpm安装完之后一直说不是内部命令的原因
- 自己动手实现智能家居之温湿度数据采集存储(DHT11,MySql)
- 踩坑踩坑之Flask+ uWSGI + Tensorflow的Web服务部署
- hadoop之yarn详解(框架进阶篇)
- electron教程(四): 使用electron-builder或electron-packager将项目打包为可执行桌面程序(.exe)
- 【maven的使用】2使用maven与pom文件
- Chirpy Zippy工具使用心得