Compare commits
No commits in common. 'b254d008fc71d47b5da03e5d63911eb886bcbdee' and '36ce9a98cbbad400cf0b8457fbb72987c458d110' have entirely different histories.
b254d008fc
...
36ce9a98cb
@ -1,75 +0,0 @@
|
||||
|
||||
// 模拟获取computedWithEnumList页面所需接口
|
||||
import { defineFakeRoute } from 'vite-plugin-fake-server/client';
|
||||
import { faker } from '@faker-js/faker';
|
||||
|
||||
// 模拟后端延迟返回
|
||||
const delay = (ms: number) => new Promise(res => setTimeout(res, ms));
|
||||
|
||||
// 模拟枚举值
|
||||
const enums = {
|
||||
// 性别
|
||||
gender: [
|
||||
{ label: '男', value: 1 },
|
||||
{ label: '女', value: 2 },
|
||||
{ label: '未知', value: 0 },
|
||||
],
|
||||
// 状态
|
||||
status: [
|
||||
{ label: '启用', value: 1 },
|
||||
{ label: '禁用', value: 0 },
|
||||
],
|
||||
// 角色
|
||||
role: [
|
||||
{ label: '管理员', value: 'admin' },
|
||||
{ label: '普通用户', value: 'common' },
|
||||
],
|
||||
};
|
||||
|
||||
export default defineFakeRoute([
|
||||
{
|
||||
url: '/computed-with-enum-list/get-page-info',
|
||||
method: 'post',
|
||||
response: async ({ body }) => {
|
||||
// 模拟延迟
|
||||
await delay(faker.number.int({ min: 200, max: 500 }));
|
||||
|
||||
const list = [];
|
||||
for (let i = 0; i < body.pageSize; i++) {
|
||||
list.push({
|
||||
id: faker.string.uuid(),
|
||||
name: faker.person.fullName(),
|
||||
gender: faker.helpers.arrayElement([0, 1, 2]),
|
||||
status: faker.helpers.arrayElement([0, 1]),
|
||||
role: faker.helpers.arrayElement(['admin', 'common']),
|
||||
createTime: faker.date.past(),
|
||||
});
|
||||
}
|
||||
|
||||
return {
|
||||
success: true,
|
||||
code: 200,
|
||||
data: {
|
||||
list,
|
||||
total: 100,
|
||||
pageSize: body.pageSize,
|
||||
pageNumber: body.pageNumber,
|
||||
},
|
||||
};
|
||||
},
|
||||
},
|
||||
{
|
||||
url: '/computed-with-enum-list/get-enum-list',
|
||||
method: 'get',
|
||||
response: async ({ query }) => {
|
||||
// 模拟超长延迟
|
||||
await delay(faker.number.int({ min: 1000, max: 5000 }));
|
||||
const type = query.type as keyof typeof enums;
|
||||
return {
|
||||
success: true,
|
||||
code: 200,
|
||||
data: enums[type] || [],
|
||||
};
|
||||
},
|
||||
},
|
||||
]);
|
||||
@ -1,57 +0,0 @@
|
||||
export const checkIdNumber = (context) => {
|
||||
const { form } = context;
|
||||
return (rule, value, callback) => {
|
||||
if (!form.idType) {
|
||||
return callback(new Error('请选择证件类型'));
|
||||
}
|
||||
if (form.idType === '身份证') {
|
||||
if (!/^[1-9]\d{5}(18|19|20)\d{2}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|21|22|23|24|25|26|27|28)\d{3}[0-9Xx]$/i.test(value)) {
|
||||
callback(new Error('身份证格式不正确'));
|
||||
}
|
||||
} else if (form.idType === '护照') {
|
||||
if (!/^[1-9]\d{7}((0[1-9])|(10|11|12))(([0-2][1-9])|10|20|21|22|23|24|25|26|27|28)\d{3}[0-9Xx]$/i.test(value)) {
|
||||
callback(new Error('护照格式不正确'));
|
||||
}
|
||||
}
|
||||
};
|
||||
};
|
||||
|
||||
export const getRules = (context) => {
|
||||
console.log(context, '传递过来的context内容');
|
||||
return {
|
||||
name: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入名称',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
age: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入年龄',
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
idType: [
|
||||
{
|
||||
required: true,
|
||||
message: '请选择证件类型',
|
||||
trigger: 'change',
|
||||
},
|
||||
],
|
||||
// 这里演示证件号码校验,必须依赖证件类型的值,比如证件类型是身份证,校验一种格式,是护照,校验另一种格式,等等
|
||||
idNumber: [
|
||||
{
|
||||
required: true,
|
||||
message: '请输入证件号码',
|
||||
trigger: 'blur',
|
||||
},
|
||||
{
|
||||
required: true,
|
||||
validator: checkIdNumber(context),
|
||||
trigger: 'blur',
|
||||
},
|
||||
],
|
||||
};
|
||||
};
|
||||
Loading…
Reference in New Issue