这可能是一个简单的问题/答案,但是我似乎无法绕开它: 我正在使用使用AbstractControl的函数来验证字段:
errorVar: boolean = false
function(c: AbstractControl): {[key: string]: string } | null {
// validation if 'test' is true or not goes here
if(test) {
let errorMessageText: "test"
return {'errorText': errorMessageText};
}
return null;
}
除了errorText
之外,我还希望函数也将变量errorVar
设置为true
,如果函数返回null,则将变量false
设置为type TArray is array (Integer range <>) of Elem,Multi;
type Bag (Max : Positive) is record
Data : TArray (1 .. Max);
Pointer : Natural := 0;
end record;
。
答案 0 :(得分:1)
您可以执行以下操作:
errorVar: boolean = false
function(c: AbstractControl): { [key: string]: string } | null {
// validation if 'test' is true or not goes here
if (test) {
this.errorVar = true;
let errorMessageText:
return { 'errorText': errorMessageText };
}
this.errorVar = false;
return null;
}
答案 1 :(得分:0)
我认为有几个问题
errorVar
应该使用var
或let
声明,以便您可以通过闭包在函数中进行设置errorMessageText
变量必须使用=
而非:
设置像这样:
var errorVar: boolean = false;
function(c: AbstractControl): {[key: string]: string } | null {
// validation if 'test' is true or not goes here
if(test) {
errorVar = true;
let errorMessageText: string ="test";
return {'errorText': errorMessageText};
}
errorVar = false;
return null;
}