При переносе нашего решения Typescript с использования Visual Studio 2015 на Visual Studio 2017 мы столкнулись с проблемой, когда у нас есть корневой файл d.ts (не в node_modules / @ types), где мы объявляем некоторые переменные, иобъявление окружающего модуля.
На него автоматически ссылались в 2015 году, но теперь в 2017 году на него не ссылаются автоматически, и он выдает ошибки в других файлах, связанные с неявным возвратом из функции, объявленной в файле объявления окружающего типа.Мы нигде не ссылаемся на файл d.ts через импорт и т. Д., Т.е.это глобально.
Для справки, мы не используем новую языковую службу TS, и мы не разрешаем неявное использование в наших файлах TS.
Построение решения с помощью командной строки с Typescript (версия, установленная из package.json), не выдает никаких ошибок.
Если мы откроем файл d.ts в Visual Studio 2017, он подхватит его, и у нас не будет ошибки.
Мы попытались использовать свойство typeRoots tsconfig.json, но оно, похоже, не работает.
Итак, наши наблюдения:
Кажется, только Visual Studio 2017ищет определения типов в 'node_modules / @ types.
После того, как файл был открыт, ссылка на файл d.ts указана правильно
Если это так, как использовать свой собственныйпользовательские файлы определений без добавления их в качестве модулей npm?Конечно, это не стандартный способ.