我从官方文档https://angular.io/guide/form-validation#custom-validators
中提取了此示例 return (control: AbstractControl): {[key: string]: any} => {
const forbidden = nameRe.test(control.value);
return forbidden ? {'forbiddenName': {value: control.value}} : null;
};
我该怎么理解这个?
return (control: AbstractControl): {[key: string]: any} => {
return ...
}
它似乎返回一个javascript对象(控件:对象)但是为什么有一个lambda?
问题不在于函数的作用,文档中对此进行了解释,而是返回语句的语法。
编辑:我只是不知道你可以创建这样的功能,现在它很清楚。
请向我解释。感谢。
答案 0 :(得分:2)
它返回一个函数,其参数control
的类型为AbstractControl
(control: AbstractControl
)。返回的此函数将依次返回可以按字符串索引的对象,并且对象中的值的类型为any({[key: string]: any}
)。重新调整的函数是箭头函数(=>
)