Я использую Microsoft Visual Studio 2013 Update 4 для отладки веб-приложения. Сначала я запустил веб-приложение в Internet Explorer, а затем подключил процесс сценария iexplore, используя параметр отладки «Присоединить к процессу» в Visual Studio. Затем я немедленно получаю новый узел в обозревателе решений под названием «Сценарии документов». В этом узле я нахожу все файлы JavaScript вместе с соответствующими им машинописными файлами. С этого момента я могу открывать файлы JavaScript и устанавливать точки останова. К сожалению, я не могу сделать то же самое для машинописных файлов. Я получаю ошибку «404 not found» при попытке открыть их. Присмотревшись повнимательнее, я вижу, что URL-адрес, используемый для их извлечения, неверен. Итак, я начинаю проверять, правильно ли указан путь к исходным файлам в исходных картах, которые были сгенерированы во время компиляции машинописных файлов. И вроде правильно поставили. Одним из способов, которым я проверил правильность исходных карт, было использование инструментов разработчика для отладки как в Internet Explorer, так и в Chrome. И работали безотказно. Таким образом, единственный вывод, который я мог сделать, заключался в том, что что-то происходило с интерпретацией исходной карты, когда Visual Studio была подключена к IE.
Чтобы правильно это прояснить, позвольте мне кратко объяснить, как выглядят мои исходные карты. Ниже вы найдете шаблон моего исходного файла карты.
{
version : 3,
file : "someFile.js",
sourceRoot : "/",
sources : ["some/relative/path/someFile.ts"],
names : ["bla", "bla", "bla"],
mappings: "aaaG,agAA,agGG,acAA"
}
Итак, я ожидал увидеть путь к файлу typescript в узле Script Documents (если предположить, что веб-приложение запускается на локальном хосте): http://localhost:8081/some/relative/path/someFile.ts
Но вместо этого я вижу, что путь: http://localhost:8081/(AbsolutePathToWhereTheJSFileIs)/some/relative/path/someFile.ts
Наконец-то мне стало ясно, почему я получаю ошибку при чтении файла. Я не понимаю, почему между ними вставляется абсолютный путь, в то время как в моей спецификации исходной карты нет никаких указаний на это. Я пробовал это со многими другими вариантами путей, но абсолютный путь к каталогу, содержащему скрипт, всегда появляется посередине. Я даже искал настройки (если они есть), которые потенциально могли бы его отключить, но так и не нашел. Я был бы признателен за любую помощь в отношении этой проблемы, с которой я столкнулся.
Ваше здоровье!