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,
|
||
}
|