Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/42.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何在node.js中获取与TypeScript文件行号相关的错误信息?_Node.js_Typescript - Fatal编程技术网

如何在node.js中获取与TypeScript文件行号相关的错误信息?

如何在node.js中获取与TypeScript文件行号相关的错误信息?,node.js,typescript,Node.js,Typescript,我正在使用TypeScript进行node.js后端开发。每当我在node.js中遇到错误时,它都会显示与传输的JavaScript(.js)文件相关的行号,而不是TypeScript(.ts)文件 如果您使用了ionic,我们将得到与那里的typescript文件对应的错误 是否有任何方法可以获取与我的typescript文件相关的错误行号?如果是,请说明我需要对配置文件进行哪些更改。您可以通过使用映射文件来实现taht。当您有地图文件并且地图文件与js文件关联时,它将自动从TS文件中为您提供

我正在使用TypeScript进行node.js后端开发。每当我在node.js中遇到错误时,它都会显示与传输的JavaScript(.js)文件相关的行号,而不是TypeScript(.ts)文件

如果您使用了ionic,我们将得到与那里的typescript文件对应的错误


是否有任何方法可以获取与我的typescript文件相关的错误行号?如果是,请说明我需要对配置文件进行哪些更改。

您可以通过使用映射文件来实现taht。当您有地图文件并且地图文件与js文件关联时,它将自动从TS文件中为您提供行号

您可以使用tsconfig.json文件中的一些配置生成映射文件

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

您需要将sourceMap设置为true

安装
源地图支持
软件包

$ npm install --save-dev source-map-support
在node.js的入口点添加此行

require('source-map-support').install();
tsconfig.json

{
   "compilerOptions": {
      "sourceMap": true
   }
}

Ref:

也可以通过节点的require选项
require
在以下范围内注册源映射:

文档还指出,babel register已经包括源地图支持,可以通过以下方式将其与mocha结合使用:

mocha --require source-map-support/register tests/
我不想打电话

require('source-map-support').install();
在每个条目文件上。(如果你只有一个入口点就足够了,但我有很多。)


基本设置仍然与概述的相同。

我没有看到任何源映射文件。我的配置文件是{“compilerOptions”:{“sourceMap”:true,}},“include”:[“src/****”]}您是如何编译的?是
tsc-p tsconfig.json
是否可以注册源映射支持而不调用
require('source-map-support').install()
?我发现:我没有看到任何源映射文件。我的配置文件是{“compilerOptions”:{“sourceMap”:true,},“include”:[“src/***”]}您能粘贴完整的tsconfig.json文件吗?在“它将自动从TS文件中给您行号”中的“it”是什么?问题的关键是OP希望
节点
.ts
文件中显示错误的行号,而不是在生成的
.js
文件中。这里的“it”表示节点。如果为ts文件生成映射文件,则可以直接调试ts文件。这意味着您可以得到错误的确切位置。可能是
require('source-map-support').install();