在WebStorm 7中调试时,Typescript断点没有被触发

5
我正在使用Typescript SDK 0.9.1.1和WebStorm 7。我有一个.ts文件,其中带有一个文件监视器来转换其.js和sourcemap文件。我还有一个HTML文件,它看起来像这样...
<!DOCTYPE html>
<html>
<head></head>
<body>
    <p id="output">5</p>
    <script src="HelloWorld.js"></script>
    <script>
        var u = new Utils();
        document.getElementById('output').innerHTML = u.plusOne(5);
    </script>
</body>
</html>

plusOne函数简单地获取一个数字(在本例中为5),并返回该数字加一。我的页面、JavaScript和TypeScript都正常工作,因为页面在加载时显示“6”。

我可以在.js文件中设置断点,并且它们会被触发(显示出TypeScript文件的相应行),但是如果我在原始的.ts文件中设置断点,则不会触发。我已经搜索了这个问题,但我的问题似乎与其他人的不同——我正在本地运行(而不是远程运行),并且在WebStorm中设置断点,而不是在Chrome的调试视图中设置断点。

在WebStorm中,脚本选项卡仅显示.js和.html文件。我应该在这里看到更多内容吗?如果这是问题,我该如何解决?我已经打开了调试配置,但我没有找到添加.ts文件的方法。

2个回答

7

你们中的一些人可能是通过谷歌来到这里的:

我所要做的就是确保在我的tsConfig.json中将sourceMap设置为true,像这样:

{
  ...
  "compilerOptions": {
    ...
    "sourceMap": true,
    ...
  },
  ...
}

1

原来这是由于WebStorm中的一个已知的错误引起的。在实际操作中,解决方法是从浏览器重新加载HTML页面(这与从WebStorm以调试模式重新运行HTML页面不同)。如果这样做,那么.ts文件中的断点将被触发。


嗯,我这里也遇到了同样的问题,但是还没有解决。我唯一能让Webstorm停下来的方法就是在代码中输入“debugger;”,但是这只会让我跳转到.js文件,而不是.ts文件。 - Flion

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接