До версии TS версии 0.9 Visual Studio потребовала, чтобы все файлы TypeScript ссылались на их зависимости через /// < ссылка .../>. Если ссылка была неправильной или пропущена, тогда была сброшена ошибка. С версии v.9.9 это поведение было изменено: теперь Visual Studio автоматически обнаруживает все доступные файлы TS и не бросает никаких ошибок (очевидно, потому, что знает все зависимости).Отключить автоматическое обнаружение файлов TypeScript в Visual Studio
Проблема, с которой мы столкнулись, - это порядок файлов. Без правильного значения /// < ссылка .../> Visual Studio производит неверный конкатенированный файл результатов, который затем приводит к ошибкам JS.
Например, у нас есть типы Foo и Boo. Boo использует Foo. Вы ожидаете, что Foo объявляется перед Boo, но на самом деле объявление Foo происходит после Boo.
Конечно, мы могли бы использовать /// < ссылку .../> даже если VS на самом деле не нужно, и строить процесс будет работать нормально. Но так как VS не вызывает никакой ошибки при использовании ссылки miss для требуемого файла, вы никогда не знаете, правильно ли связан файл результата, а объявления типа правильно упорядочены.
Итак, я хотел бы знать, есть ли способ отключить этот режим автоматического обнаружения и получить список неразрешенных ссылок. Или, может быть, есть еще одна работа, которую я мог бы использовать?
Кстати, мы также пробовали плагин TS gulp, и он создает правильно конкатенированный JS-код. К сожалению, это медленнее, чем встроенный VS TypeScript (5-6 сек против 1-2 сек). Вот почему мы вернулись к VS.
Благодарим за отправку вашей техники, что у меня была такая же потребность и она была успешно использована. Тем не менее, я использую параметр 'declarations: true' compiler из-за моих модульных тестов, и всякий раз, когда создается файл деклараций, я получаю миллиард ошибок« Duplicate identifier », и мой код становится полным или красным подчеркивается. Кажется, что VS все еще автоматически обнаруживает файлы 'd.ts' в моем веб-проекте (классический проект ASP.NET MVC5). У вас есть идеи, как справиться с этим? –
На самом деле, у меня есть аналогичная проблема, но в моем случае это было из-за ReSharper. К сожалению, я не помню, что именно фиксировало проблему, скорее всего, «Очистить кеши» в ReSharper + перезапустить VS –