Параметр типа «T» не может быть присвоен параметру типа «строка».

Код ошибки следующий

export const cycTest=(value:any,testName:string):boolean=>testObject[testName].test(value);
export const cycTestLabel=<T>(value:any,testName:T,label:T):(boolean|Error)=>{
  return !cycTest(value,testName)?new Error(`${label}格式错误`):true
};

Сообщение об ошибке следующее

 Запись решения

Прямое <T расширяемая строка> может быть решено напрямую

export const cycTest=(value:any,testName:string):boolean=>testObject[testName].test(value);
export const cycTestLabel=<T extends string>(value:any,testName:T,label:T):(boolean|Error)=>{
  return !cycTest(value,testName)?new Error(`${label}格式错误`):true
};

Публичный аккаунт блоггера wx: « Дикая зона программиста » имеет преимущества в строке меню

Supongo que te gusta

Origin blog.csdn.net/xuelang532777032/article/details/131900907
Recomendado
Clasificación