У вас включена опция компилятора noImplicitThis
, а в новом выражении f
функция this
неявно имеет тип any
- отсюда и ошибка.
Чтобы исправить это - просто укажите тип явноиспользуя «фальшивый» this
параметр :
const f: any = function(this: typeof target, ...args: any[]) {
// ...
};
По умолчанию тип этой функции внутри любой.Начиная с TypeScript 2.0, вы можете явно указать этот параметр.эти параметры являются поддельными параметрами, которые стоят первыми в списке параметров функции