java-mall-admin/src/utils/static.js
2024-11-01 16:24:11 +08:00

55 lines
1.4 KiB
JavaScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

/**
* @description 导入所有 controller 模块浏览器环境中自动输出controller文件夹下Mock接口请勿修改。
*/
import Mock from 'mockjs'
import { paramObj } from '@/utils/index'
import request from '@/utils/request'
const files = require.context('../../mock/controller', true, /\.js$/)
const mocks = files.keys().flatMap(files)
export function mockXHR() {
Mock.XHR.prototype.proxy_send = Mock.XHR.prototype.send
Mock.XHR.prototype.send = function () {
if (this.custom.xhr) {
this.custom.xhr.withCredentials = this.withCredentials || false
if (this.responseType) {
this.custom.xhr.responseType = this.responseType
}
}
if (this.custom.requestHeaders)
this.custom.options.headers = this.custom.requestHeaders
this.proxy_send(...arguments)
}
function XHRHttpRequest(respond) {
return function (options) {
let result
if (respond instanceof Function) {
const { body, type, url, headers } = options
result = respond({
method: type,
body: JSON.parse(body),
query: paramObj(url),
headers: headers,
})
} else {
result = respond
}
return Mock.mock(result)
}
}
mocks.forEach((item) => {
Mock.mock(
new RegExp(item.url),
item.type || 'get',
XHRHttpRequest(item.response)
)
})
}
export function getAreaJSON() {
return require('/public/static/json/area-data.json')
}