161 lines
3.3 KiB
TypeScript
161 lines
3.3 KiB
TypeScript
import addDays from 'date-fns/addDays';
|
||
import format from 'date-fns/format';
|
||
import { Random } from 'mockjs';
|
||
|
||
export const COLOR_NAMES = ['red', 'volcano', 'orange', 'gold', 'yellow', 'lime', 'green', 'cyan', 'blue', 'geekblue', 'purple', 'magenta'];
|
||
|
||
export function genName(): any {
|
||
return genArr(['asdf', 'cipchk', '卡色']);
|
||
}
|
||
|
||
export function genProvince(): any {
|
||
return genArr([
|
||
'台湾',
|
||
'河北',
|
||
'山西',
|
||
'内蒙古',
|
||
'辽宁',
|
||
'吉林',
|
||
'黑龙江',
|
||
'江苏',
|
||
'浙江',
|
||
'安徽',
|
||
'福建',
|
||
'江西',
|
||
'山东',
|
||
'河南',
|
||
'湖北',
|
||
'湖南',
|
||
'广东',
|
||
'广西',
|
||
'海南',
|
||
'四川',
|
||
'贵州',
|
||
'云南',
|
||
'西藏',
|
||
'陕西',
|
||
'甘肃',
|
||
'青海',
|
||
'宁夏',
|
||
'新疆',
|
||
'北京',
|
||
'天津',
|
||
'上海',
|
||
'重庆',
|
||
'香港',
|
||
'澳门',
|
||
]);
|
||
}
|
||
|
||
export function genArr(arr: any[], count: number = 1): any {
|
||
if (count === 1) {
|
||
return arr[Random.natural(0, arr.length - 1)];
|
||
}
|
||
return new Array(count <= -1 ? Random.natural(0, -count) : count).fill({}).map(() => {
|
||
return arr[Random.natural(0, arr.length - 1)];
|
||
});
|
||
}
|
||
|
||
export function genColorName(): any {
|
||
return genArr(COLOR_NAMES);
|
||
}
|
||
|
||
export function genLabel(): any {
|
||
return genArr([
|
||
{
|
||
color: 'green',
|
||
text: 'Clients',
|
||
},
|
||
{
|
||
color: 'red',
|
||
text: 'Important',
|
||
},
|
||
{
|
||
color: 'blue',
|
||
text: 'Other',
|
||
},
|
||
]);
|
||
}
|
||
|
||
/** 生成头像,`id` 只能0-8 */
|
||
export function genMp(id?: number): string {
|
||
return `https://randomuser.me/api/portraits/lego/${typeof id === 'undefined' ? Random.natural(0, 8) : id}.jpg`;
|
||
}
|
||
|
||
export function genBigMp(): string {
|
||
return `./assets/tmp/img-big/${Random.natural(1, 8)}.jpg`;
|
||
}
|
||
|
||
export function genTag(num: number = -3): any {
|
||
return genArr(['Angular', 'Node', 'HTML5', 'Less', 'Db', 'Python', 'Go'], num);
|
||
}
|
||
|
||
export function addDate(days: number): Date {
|
||
return addDays(new Date(), days);
|
||
}
|
||
|
||
export function genData(days: number, dateFormat: string = 'yyyy-MM-dd'): string {
|
||
return format(addDate(days), dateFormat);
|
||
}
|
||
|
||
export function rudeCopy(obj: any): string {
|
||
return JSON.parse(JSON.stringify(obj));
|
||
}
|
||
|
||
export function genContent(): string {
|
||
return `
|
||
<h2>主标题</h2>
|
||
<h3>次标题</h3>
|
||
<p><a>段落</a>,${Random.cparagraph(1, 1)}<p>
|
||
<p>段落,${Random.paragraph(1, 1)}<p>
|
||
<h2>列表</h2>
|
||
<ol>
|
||
<li>
|
||
<p>段落,${Random.paragraph(1, 1)}<p>
|
||
<ul>
|
||
<li><a>${Random.ctitle(5, 10)}</a></li>
|
||
<li><a>${Random.ctitle(5, 10)}</a></li>
|
||
<li><a>${Random.ctitle(5, 10)}</a></li>
|
||
<li><a>${Random.ctitle(5, 10)}</a></li>
|
||
<li><a>${Random.ctitle(5, 10)}</a></li>
|
||
</ul>
|
||
</li>
|
||
<li>
|
||
<p>段落,${Random.paragraph(1, 1)}<p>
|
||
</li>
|
||
<li>
|
||
<p>段落,${Random.paragraph(1, 1)}<p>
|
||
</li>
|
||
</ol>
|
||
<h2>图像</h2>
|
||
<p><img src="${Random.image()}"></p>
|
||
<h2>表格</h2>
|
||
<table>
|
||
<thead>
|
||
<tr>
|
||
<th>列</th>
|
||
<th>列</th>
|
||
<th>列</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
</tr>
|
||
<tr>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
</tr>
|
||
<tr>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
<td>列</td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
`;
|
||
}
|