function getChangeRule (message = '', type) { let rule = { required: true, message: `请选择${message}`, trigger: 'change' } if (type) { rule.type = type } return rule } export function getTextRule (message = '内容') { return { required: true, message: `请输入${message}`, trigger: 'blur' } } export function getNumberRule (message = '数字') { return { required: true, type: 'number', message: `请输入${message}`, trigger: 'blur' } } export function getChooseRule (message = '选项') { return getChangeRule(message, 'number') } export function getDateRule (message = '时间') { return getChangeRule(message, 'date') } export function getOptionRule (message = '') { return getChangeRule(message) } export function getArrayOptionRule (message = '') { return getChangeRule(message, 'array') } export function getObjectRule (message = '', trigger = 'change') { return { validator: (rule, value, callback) => { if (value && JSON.stringify(value) === '{}') { callback(new Error(`请选择${message}`)) } else { callback() } }, required: true, trigger } } // 为兼容旧系统,不建议使用 Begin export let textRule = getTextRule() export let numberRule = getNumberRule() export let chooseRule = getChooseRule() export let dateRule = getChangeRule('时间', 'date') export let optionRule = getChangeRule() export let arrayOptionRule = getChangeRule('', 'array') // 为兼容旧系统,不建议使用 End export let rule = { arrayOptionRule, getTextRule, getNumberRule, getChooseRule, getDateRule, getOptionRule, getArrayOptionRule }