mockjs使用示例

mockjs使用示例package json mockjs 1 0 1 beta3 src mock index jsimportMock mockjs importsubjec subject Mock mock subject array get subjectAPI getArray Mock mo

package.json

"mockjs": "^1.0.1-beta3"

src/mock/index.js

import Mock from 'mockjs' import subjectAPI from './subject' Mock.mock(/\/subject\/array/, 'get', subjectAPI.getArray) Mock.mock(/\/subject\/list/, 'get', subjectAPI.getList) Mock.mock(/\/subject\/add/, 'post', subjectAPI.addData) Mock.mock(/\/subject\/edit/, 'post', subjectAPI.editData) export default Mock

src/mock/subject.js

import Mock from 'mockjs' import { param2Obj } from '@/utils' const List = [] const count = 100 const array = [ { type: '资产', category: ['流动资产', '非流动资产'] }, { type: '负债', category: ['流动负债', '非流动负债'] }, { type: '共同', category: ['共同'] }, { type: '权益', category: ['所有者权益'] }, { type: '成本', category: ['成本'] }, { type: '损益', category: ['营业收入', '其他收益', '期间费用', '其他损失', '营业成本及税金', '以前年度损益调整', '所得税'] } ] for (let i = 0; i < count; i++) { List.push(Mock.mock({ id: '@increment', subjectCode: '@string("number", 4, 8)', subjectName: '@cword(3, 5)', subjectType: array[i % 6].type, categoryList: array[i % 6].category, subjectCategory: array[i % 6].category[0], parentSubject: '', 'balanceDirection|1': ['借', '贷'][i % 2], subjectStatus: '@boolean', 'auxiliaryAccounting|1': ['客户', '供应商', '职员', '部门', '项目', '存货', '现金流'][i % 7], quantitativeAccounting: true, measurementUnit: '@cword(1)', foreignCurrencyAccounting: true, 'foreignCurrency|1': ['RMB', 'USD'][i % 2] })) } export default { getArray: () => { return { code: 20000, data: array } }, getList: config => { const { type, page = 1, limit = 20 } = param2Obj(config.url) const mockList = List.filter(item => type && item.subjectType === type) const pageList = mockList.filter((item, index) => index < limit * page && index >= limit * (page - 1)) return { code: 20000, data: { total: mockList.length, items: pageList } } }, addData: config => { const data = JSON.parse(config.body) List.unshift(data) return { code: 20000 } }, editData: config => { const data = JSON.parse(config.body) const index = List.findIndex((item) => { return item.id === this.form.id }) List.splice(index, 1, data) return { code: 20000 } } } 

src/utils/index.js

export function param2Obj(url) { 
    const search = url.split('?')[1] if (!search) { return {} } return JSON.parse('{"' + decodeURIComponent(search).replace(/"/g, '\\"').replace(/&/g, '","').replace(/=/g, '":"') + '"}') }

src/main.js

import '@/mock'
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/228117.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午7:47
下一篇 2026年3月16日 下午7:47


相关推荐

  • JVM 内存模型概述

    JVM 内存模型概述Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域,这些数据区域都有各自的用途,以及创建和销毁的时间,并且它们可以分为两种类型:线程共享的方法区和堆,线程私有的虚拟机栈、本地方法栈和程序计数器。在此基础上,我们探讨了在虚拟机中对象的创建和对象的访问定位等问题,并分析了Java虚拟机规范中异常产生的情况。

    2022年6月12日
    35
  • Dubbo + Hystrix 实现服务熔断「建议收藏」

    Dubbo + Hystrix 实现服务熔断「建议收藏」熔断器简介在微服务架构中,根据业务来拆分成一个个的服务,服务与服务之间可以通过RPC相互调用。为了保证其高可用,单个服务通常会集群部署。由于网络原因或者自身的原因,服务并不能保证100%可用,如果单个服务出现问题,调用这个服务就会出现线程阻塞,此时若有大量的请求涌入,Servlet容器的线程资源会被消耗完毕,导致服务瘫痪。服务与服务之间的依赖性,故障会传播,会对整个微服务系统造成灾难性的严重后果,这就是服务故障的“雪崩”效应。为了解决这个问题,业界提出了熔断器模型。Netflix

    2022年8月30日
    4
  • Py之dlib:Python库之dlib库的简介、安装、使用方法详细攻略

    Py之dlib:Python库之dlib库的简介、安装、使用方法详细攻略Py之dlib:Python库之dlib库的简介、安装、使用方法详细攻略目录dlib库的简介dlib库的安装dlib库的使用函数0、利用dlib.get_frontal_face_detector函数实现人脸检测可视化1、hog提取特征的函数2、CNN提取特征的函数dlib库的简介一个机器学习的开源库,包含了机器学习的很多算…

    2022年6月29日
    44
  • Java三大特征

    Java三大特征Java面向对象的三大特征:封装、继承、多态封装和继承几乎都是为多态而准备的一、     封装首先,属性能够描述事物的特征,方法能够描述事物的动作。封装就是把同一类事物的共性(包括属性和方法)归到同一类中,方便使用。封装:封装也称信息隐藏,是指利用抽象数据类型把数据和基于数据的操作封装起来,使其成为一个不可分割的整体,数据隐藏在抽象数据内部,尽可能的隐藏数

    2022年7月7日
    24
  • Linux 环境下 OpenClaw AI 助手部署实战(飞书机器人接入)

    Linux 环境下 OpenClaw AI 助手部署实战(飞书机器人接入)

    2026年3月13日
    3
  • 数据安全无小事,免费用Github定时备份n8n工作流

    数据安全无小事,免费用Github定时备份n8n工作流

    2026年3月15日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号