【发布时间】:2018-02-11 07:52:44
【问题描述】:
我的文件夹中有以下文件:
loader.js
loader.js.map
loader.ts
tsconfig.json
我的tsconfig.json 看起来像这样:
{
"compileOnSave": true,
"compilerOptions": {
"strict": true,
"target":"es3",
"sourceMap": true
}
}
生成的地图文件(loader.js.map)如下所示:
{
"version": 3,
"file": "loader.js",
"sourceRoot": "",
"sources": ["loader.ts"],
"names": [],
"mappings": ";AAAA,IAAM,iBAAiB,GAAG,UAAI,GAA0B;IACpD,IAAM,OAAO,GAAQ,EAAE,CAAC;IACxB,IAAM,UAAU,GAAG,IAAI,UAAU,CAAI,GAAG,CAAC,CAAC;IAC1C,UAAU,CAAC,SAAS,EAAE,CAAC;IACvB,OAAO,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,CAAC;QACzB,OAAO,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,EAAE,CAAC,CAAC;QAChC,UAAU,CAAC,QAAQ,EAAE,CAAC;IAC1B,CAAC;IACD,MAAM,CAAC,OAAO,CAAC;AACnB,CAAC,CAAC;AAEF,IAAM,GAAG,GAAG,IAAI,aAAa,CAAC,4BAA4B,CAAC,CAAC;AAC5D,IAAM,KAAK,GAAG,IAAI,aAAa,CAAC,eAAe,CAAC,CAAC;AACjD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;AACrC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;AAErC,IAAI,OAAO,GAAG,CAAC,CAAC;AAChB,GAAG,CAAC,CAAY,UAAoC,EAApC,KAAA,iBAAiB,CAAC,OAAO,CAAC,SAAS,CAAC,EAApC,cAAoC,EAApC,IAAoC;IAA/C,IAAM,CAAC,SAAA;IACR,OAAO,CAAC,IAAI,CAAI,OAAO,UAAK,CAAG,CAAC,CAAC;IACjC,OAAO,EAAE,CAAC;CACb;AAGD,mBAAmB;AAEnB,uCAAuC;AAEvC,6CAA6C;AAE7C,8EAA8E;AAE9E,eAAe;AACf,0CAA0C;AAE1C,oDAAoD"
}
但是,当我尝试在 cscript.exe 下调试时:
cscript.exe //x //d loader.js
Visual Studio 调试器显示的是 Javascript,而不是 Typescript。
我知道 Visual Studio 支持源映射调试,这在某一时刻确实有效。
还有其他答案建议在.map 文件中为sourceRoot 提供绝对路径(在这种情况下,通过在tsconfig.json 中设置sourceRoot 属性);但这没有任何效果。
在这种情况下,我可以尝试哪些步骤使用 Visual Studio 启用源映射?
【问题讨论】:
-
VS2010 太旧了,无法拥有对源映射一无所知的调试引擎。你必须更接近 2015 年。
-
当你说这一次确实有效时,你的意思是
cscript.exe本身或另一个NodeJS程序? -
@TarunLalwani For
cscript.exe. -
@ZevSpitz,发布了一个答案,这应该对您有所帮助,因为我已经测试了许多不同的可能性
标签: visual-studio visual-studio-2017 wsh