in src/types/MEnumType.ts [9:24]
function validateCandidate(a: Assembly, schema: MFieldSchemaAnonymity, value: any, path: string): MValidationResult {
let fs = MUtil.option(schema);
console.log('validateCandidate', value)
for (let f of fs) {
// @ts-ignore
if (MUtil.isEquals(f.value, _.isObject(value) ? value?.value : value, schema.tolerate)) {
return undefined;
}
}
const openOption = _.clone(schema.openOption ?? schema.enumOpen)
if (openOption) {
openOption.required = true; // 既然勾上了开放选项,就必须填, TODO 把开放选项标注成必填,可以在schema预处理做
return assembly.validate(openOption, value, "")
}
return { message: '请选择一个选项', path }
}