以下是一些代码,我们正面临lint问题:-
export function TakeUntilDestroy(destroyMethodName = 'ngOnDestroy') {
return function <T extends { new(...args: any[]): {} }>(constructor: T) {
// some code
}
}
我在代码的第二行遇到了两个lint问题。第一个是";非箭头功能被禁止";。我们不想删除lint规则来消除这个错误。
第二次皮棉问题是";类型文字只有一个调用签名-使用'new(…args:any[](=>"{}"。
我无法解决这些问题。我尝试了几件事,但都解决不了。这些问题对我来说是新鲜事。
您正在使用语法return function
定义一个新函数,第一条规则断言您应该使用箭头函数。
return <T extends { new(...args:any[]): {} }>(constructor: T) => {
请参阅此处的箭头功能文档
第二个错误与您的泛型类型T有关。看起来这也需要一个箭头函数,即
return <T extends { new(...args:any[]) => {} }>(constructor: T) => {
如果你用这个片段替换你发布的代码,会出现错误吗?
export function TakeUntilDestroy(destroyMethodName = 'ngOnDestroy') {
return <T extends { new(...args: any[]) => {} }>(constructor: T) => {
// some code
}
}