Как работает Visual Studio (2015) с внешними инструментами, такими как компилятор NPM и Typcript (tsc.exe) и т. Д.? Думаю, во время создания решения или проекта что-то должно рассказывать MSBuild о запуске этих дополнительных инструментов. Я хочу понять это при работе с капюшоном.Visual Studio - под капотом (NPM/Typcript)
1
A
ответ
1
Это все зависит ...
Visual Studio имеет несколько сервисов и функций, которые Интерлинк здесь:
- Language Services - Visual Studio может быть расширена с помощью так называемого языковые службы, они обеспечивают анализ intellisense, синтаксис, выделение и т. д. Для Javascript и TypScript Microsoft предоставляет языковой сервис, который предоставляет такую информацию.
- MsBuild - Под большинством проектов Visual Studio живет проект MsBuild. Если вы выполните поиск в каталоге программных файлов, вы найдете папку MsBuild и под ним будет указано количество целевых файлов. Это включает в себя один для Typcript, который преобразует ваши .ts-файлы во время сборки. Эти целевые файлы напрямую используют задачу
exec
MsBuild для запуска инструментов или предоставления пользовательской задачи MsBuild в виде сборки .NET, которая реализует определенные интерфейсы. Эти задачи могут либо реализовать требуемое действие самостоятельно, либо выложить на инструмент, чтобы он выполнял действие. - Roslyn - Для C# и VB.NET анализ проектов и фоновая компиляция источников обрабатывается новым компилятором Roslyn. Это действительно работает в фоновом режиме во время ввода и имеет очень мощную модель памяти всего вашего кода в вашем проекте. Roslyn также поддерживает надстройки в виде анализаторов и действий рефакторинга, которые либо предоставляют пользователю обратную связь об общих ошибках, либо предоставляют способы автоматической перезаписи/изменения кода.
- Task Runner - Visual Studio Task Runner - это плагин для Visual Studio, который сначала поставляется как расширение и теперь является частью Visual Studio. Он реагирует на события в среде IDE (сборка, тестирование и т. Д.) И может связывать действия в ваших сценариях
package.json
или grunt или bower etc. Плагин убедится, что ваши скриптовые команды выполняются в нужный момент времени во время сборки. - Test Runners - тестовое окно Visual Studio поддерживает также расширения, поэтому Mocha и Chutzpah extension в вашем проекте будут подняты, и во время выполнения теста эти плагины будут предложены для первого списка и последующего выполнения тестов. Эти бегуны выступают в качестве своего рода прокси-серверов, которые возвращают список тестов и их статус после выполнения.
- Custom extensions - Есть много других способов, которыми некоторые поставщики расширяют Visual Studio, предоставляя универсальное расширение.Эти расширения могут содержать любой из вышеуказанных элементов или могут просто прослушивать события, созданные Visual Studio, в то время как вы выполняете свою работу и реагируете на них.
1
Вы можете увидеть ссылки на пункты машинопись, если вы откроете .csproj с помощью текстового редактора (или из визуальной студии: выгрузить проект, щелкните правой кнопкой мыши на проекте и выберите Обработать myproject.csproj)
Вы увидите машинописи ресурсов:
<ItemGroup>
<TypeScriptCompile Include="src\config.ts" />
мишень для сборки:
<Import Project="$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets" Condition="Exists('$(MSBuildExtensionsPath32)\Microsoft\VisualStudio\v$(VisualStudioVersion)\TypeScript\Microsoft.TypeScript.targets')" />
внешних инструментов, настроенные в Инструменты/Опции:
Смежные вопросы
- 1. Scala SortedMap под капотом
- 2. OpenFileDialog под капотом
- 3. Резьба: Запирание под капотом
- 4. Под капотом диспетчера
- 5. PHP поведение под капотом
- 6. Array.prototype.concat() под капотом
- 7. Netty setRadable() под капотом
- 8. mpi под капотом
- 9. Javascript под капотом
- 10. CreateDIBSection под капотом
- 11. Видя под капотом Руби?
- 12. Наследование под капотом
- 13. Под капотом нового
- 14. Под капотом Uninformative Prior?
- 15. Команда Nsis ExecWait под капотом
- 16. Используйте гризли прозрачно под капотом?
- 17. C# Делегат под капотом вопрос
- 18. Override ПКН DoctrineBehaviors «под капотом»
- 19. Как работает method_name = под капотом?
- 20. Как работает memchr() под капотом?
- 21. Как CSS работает под капотом?
- 22. SQL: исходный код/под капотом
- 23. Как работает callvirt под капотом?
- 24. Как работает gmail под капотом
- 25. Реализация .NET DataSet под капотом
- 26. Как работает структура под капотом?
- 27. Метод Grails list() под капотом
- 28. Как работает querySelector под капотом?
- 29. Как WeakHashMap работает под капотом
- 30. Javascript под капотом преобразования ToString
Спасибо! Теперь я могу подключить точки. – jujiro