Вопрос

Есть ли способ отладить источник TypeScript в Visual Studio (вместо отладки сгенерированного javascript)?

Из спецификаций языка TypeScript:

TypeScript дополнительно предоставляет исходные карты, позволяющие отладку на уровне исходного кода.

Поэтому я ожидал, что смогу размещать точки останова в коде ts и иметь возможность его отлаживать, но это не сработало.Других упоминаний об отладке в спецификациях я не нашел.Есть ли что-нибудь, что я должен сделать, чтобы это сработало?Возможно, слово «необязательно» намекает, что мне нужно что-то сделать, чтобы это заработало...Какие-либо предложения?

Это было полезно?

Решение

Обновление от VS 2017:

VS2017 теперь работает для отладки машинописного текста непосредственно в Visual Studio, как если бы вы отлаживали C#.Смотрите мой ответ ниже.

Оригинальный ответ для предыдущих версий VS:

Возможно, вы не сможете выполнять отладку в VS, но можете в некоторых браузерах.Аарон Пауэлл только сегодня написал в блоге о том, как заставить точки останова работать в Chrome Canary: https://www.aaron-powell.com/posts/2012-10-03-typescript-source-maps/.

Чтобы подвести итог (очень кратко) тому, что говорит Аарон, вы используете -sourcemap включите компилятор, чтобы сгенерировать *.js.map файл в том же каталоге, что и исходный файл.В браузерах, поддерживающих исходные карты (Chrome Canary и, предположительно, последние сборки Firefox, поскольку они являются идеей Mozilla), затем вы можете отладить свой .ts источник, как обычно .js файлы.

Блог заканчивается словами «Надеюсь, что команда Visual Studio или IE (или обеих) также возьмет на вооружение Source Maps и добавит поддержку для них.» — что говорит о том, что этого еще не произошло.

Обновлять:

С выпуском TypeScript 0.8.1 отладка исходной карты теперь доступна и в Visual Studio:

http://blogs.msdn.com/b/typescript/archive/2012/11/15/announcing-typescript-0-8-1.aspx

Из объявления:

ОтладкаTypeScript теперь поддерживает отладку на уровне исходного кода!Формат карты источника набирает популярность как способ отладки языков, которые переводят в JavaScript и поддерживаются различными браузерами и инструментами.С версией 0.8.1 компилятор TypeScript официально поддерживает исходные карты.Кроме того, новая версия TypeScript для Visual Studio 2012 поддерживает отладку с использованием формата исходной карты.Из командной строки мы теперь полностью поддерживаем использование флага --sourcemap, который выводит файл исходной карты, соответствующий выходным данным JavaScript.Этот файл позволит непосредственно отлаживать исходный исходный код TypeScript в браузерах с поддержкой исходных карт и Visual Студия.Чтобы включить отладку в Visual Studio, выберите «Отладка» в раскрывающемся списке после создания HTML-приложения с проектом TypeScript.

Обновлять:

В WebStorm также добавлена ​​поддержка отладки через SourceMaps: http://blog.jetbrains.com/webide/2013/03/webstorm-6-0-released-adds-typescript-debugging-with-source-maps-fresh-ui-and-much-more/

Во -первых, WebStorm позволяет разумнее и более оптимизированная веб -разработка с современными языками, такими как TypeScript, CoffeeScript и DART.В дополнение к предоставлению первоклассного редактора кода для этих языков, Webstorm 6 предлагает:

Автоматическая компиляция/транспиляция этих языков более высокого уровня в те, которые признаны браузерами на всех поддерживаемых платформах.Полнофункциональная отладка TypeScript, DART или CoffeeScript с исходными картами.

Другие советы

с приложением VS2013, мне не нужно ничего менять в web.config.Я положил точку останова в файл TS и отладил в IE, и Presto точка останова остановилась внутри Teadercript.

Это сейчас фиксируется в VS 2017, поэтому вы можете отладить непосредственно в Visual Studio и Teadercript.

Просто установите свою точку останова в файл * .ts, и он будет ударен.

И он отладки в против, а не то есть, как будто вы отладки C #.

Отладка Teamscript с Visual Studio работает с правильными настройками. (В предыдущих версиях VS I сталкиваюсь с проблемами иногда, ниже того, как это работает нормально с VS 2015 CTP 6)

  1. сначала вы Убедитесь, что вы создаете исходные карты при компиляции Teamscript для JavaScript. Таким образом, у вас должен быть файл xxx.js.map рядом с каждым xxx.js.

    Получение исходных карт, запустив компилятор TeampStry за пределами Visual Studio не вызывает никаких сложностей, в командной строке TSC Add

    --sourcemap %1.ts
    
    .

    Ваш скрипт глотания обычно создает SourceMaps по умолчанию.

  2. Настроить ваше веб-приложение в Visual Studio .

    Установите Internet Explorer как начальный браузер. Я получил его работать только с IE, и не думаю, что какой другой браузер будет работать.

    В свойствах проекта Перейдите на вкладку «Веб-дюйма» и настройте раздел «Отладчики» внизу: Отключить все отладки ! Это счетчик противодействия, и вы можете увидеть это сообщение об ошибке:

    Вы попытались запустить отладчик, но на основе ваших текущих настроек отладки на странице веб-свойств веб-сайтов нет процесса отладки. Это происходит, когда «не открываешь страницу. Ждать, пока выбрана запрос с другого процесса», и отладку ASP.NET отключена. Пожалуйста, проверьте ваши настройки на странице веб-сайта и попробуйте снова.

    По словам сообщений об ошибке, начальное действие в верхней части веб-свойств должно быть другой вариант, например, « текущая страница ».

    Установите PROPENTS В вашем режиме TS в Visual Studio теперь или позже.

    Нажмите F5

  3. Когда вы можете использовать редактор Visual Studio для отладки и редактирования файлов TS, «Редактирование и продолжение» не будет работать, в настоящее время нет браузера, который может перезагружать файлы js и js.map и продолжить. (Поправьте мне кого угодно, если я ошибаюсь, и я буду счастлив.)

Типписная отладка не работала для меня вообще с обновлением VS2013 на любой из моих машин.После многих разочарований я решил попробовать обновить до обновления VS2013 4 CTP.Наконец точки останова попадают в против!

Краткий ответ: перезапустите Visual Studio

Фон: У меня было 2 экземпляра Visual Studio 2015 с двумя разными проектами с помощью Teadercript.Первый начальный экземпляр не отладил правильно, второй сделал. Все настройки проекта были одинаковыми. Я наконец перезапустил первый экземпляр, а затем он отладил TeampScript (наконец).

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top