Почему я получаю неявную ошибку 'any' для частного геттера в моих файлах .d.ts? - PullRequest
1 голос
/ 23 января 2020

Я обновил свои зависимости через npm install или что-то еще, и теперь TypeScript 3.6 сообщает странное сообщение об ошибке

Property 'myGetter' implicitly has type 'any', because its get accessor lacks a return type annotation.

Я не понимаю, что происходит. Мой код не изменился вообще. Переход на TypeScript 3.7 устраняет проблему, а на TypeScript 3.5 я получаю ту же ошибку вместе с новой ошибкой:

An accessor cannot be declared in an ambient context.

1 Ответ

0 голосов
/ 23 января 2020

Обновление TypeScript до 3.6.5 или, в идеале, более новой версии решит проблему. Просто запустите

npm install typescript

или, если вам действительно нужно оставаться привязанным к TypeScript 3.6

npm install typescript@3.6

Вероятная причина, по которой это происходит, заключается в том, что одна из ваших зависимостей начала использовать TypeScript 3.7 или новее .

TypeScript 3.7 начал генерировать get средства доступа в файлах .d.ts, но не включил их типы для элементов private. TypeScript 3.6.4 предполагал, что это ошибка в noImplicitAny. Это ошибка, которая была исправлена ​​в 3.6.5 и TypeScript 3.7.

...