44 lines
1.2 KiB
Vue
44 lines
1.2 KiB
Vue
|
const { Random } = require('mockjs')
|
|||
|
const { join } = require('path')
|
|||
|
const fs = require('fs')
|
|||
|
|
|||
|
/**
|
|||
|
* @author chuzhixin 1204505056@qq.com
|
|||
|
* @description 随机生成图片url。
|
|||
|
* @param width
|
|||
|
* @param height
|
|||
|
* @returns {string}
|
|||
|
*/
|
|||
|
function handleRandomImage(width = 50, height = 50) {
|
|||
|
return `https://picsum.photos/${width}/${height}?random=${Random.guid()}`
|
|||
|
}
|
|||
|
|
|||
|
/**
|
|||
|
* @author chuzhixin 1204505056@qq.com
|
|||
|
* @description 处理所有 controller 模块,npm run serve时在node环境中自动输出controller文件夹下Mock接口,请勿修改。
|
|||
|
* @returns {[]}
|
|||
|
*/
|
|||
|
function handleMockArray() {
|
|||
|
const mockArray = []
|
|||
|
const getFiles = (jsonPath) => {
|
|||
|
const jsonFiles = []
|
|||
|
const findJsonFile = (path) => {
|
|||
|
const files = fs.readdirSync(path)
|
|||
|
files.forEach((item) => {
|
|||
|
const fPath = join(path, item)
|
|||
|
const stat = fs.statSync(fPath)
|
|||
|
if (stat.isDirectory() === true) findJsonFile(item)
|
|||
|
if (stat.isFile() === true) jsonFiles.push(item)
|
|||
|
})
|
|||
|
}
|
|||
|
findJsonFile(jsonPath)
|
|||
|
jsonFiles.forEach((item) => mockArray.push(`./controller/${item}`))
|
|||
|
}
|
|||
|
getFiles('mock/controller')
|
|||
|
return mockArray
|
|||
|
}
|
|||
|
module.exports = {
|
|||
|
handleRandomImage,
|
|||
|
handleMockArray,
|
|||
|
}
|