问题标签 [ts-node]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
7 回答
13371 浏览

angular - Heroku 使用 ts-node 部署

我正在尝试在 Heroku中部署Angular Universal Starter的示例。

任务npm start失败,因为它无法识别 ts-node。

有没有办法使用 ts-node 在 Heroku 上进行部署?

0 投票
10 回答
74874 浏览

typescript - 有没有办法使用 npm 脚本运行 tsc -watch && nodemon --watch?

我正在寻找一种使用 npm 脚本同时运行tsc --watch && nodemon --watch的方法。我可以独立运行这些命令,但是当我想同时运行它们时,只执行第一个。例如:

tsc --watch被执行但从nodemon未被调用,反之亦然。

0 投票
2 回答
8833 浏览

node.js - 无法编译简单的 TypeScript node-ts 示例

我正在尝试学习https://github.com/TypeStrong/ts-node。我写了两个文件作为一个简单的例子。它们都在同一个目录中,目前与 package.json 不在同一个文件夹中

运行-ts.js

测试.ts

我正在运行以下脚本:

我收到以下编译错误

我希望在控制台上看到“测试消息”。

0 投票
1 回答
229 浏览

javascript - 尝试将 vue 与 ts-node 一起使用

我很乐意在我的服务器端代码中导入一个 .vue 文件。深深地,我还没有真正使用 *.vue 文件导出,但是客户端和服务器端的一些代码很常见,并引用这些文件。

我现在将 ts-node 用于开发/调试,并使用 webpack 将我的客户端代码与我的 *.vue 文件捆绑在一起。

我尝试了许多解决方案,但发现没有一个真正有效 - 甚至 tsConfig.json 中引用的 .d.ts

有谁知道一个优雅的解决方案,还是我应该辞职以将 webpack 也用于服务器端?(我有犹豫,因为只有客户端编译的编译已经很慢了)

0 投票
1 回答
2329 浏览

node.js - 使用 mocha 和 ts-node 运行位于单独目录中的测试?

我将源代码和测试分开如下:

中的导入语句src/test/ts/hello.spec.ts如下所示:

hello.ts源代码如下所示:

tsconfig.json的设置使得测试文件可以在不使用相对路径的情况下导入源模块,如下所示:

这样文件可以使用语句hello.spec.ts导入helloimport hello from 'hello';

我正在尝试运行npm test配置为像这样运行 mocha 和 tsnode 的测试(基于这篇文章):

tsconfig.json但是,当我收到此错误时,它看起来不像 ts-node 正在接受我的配置:

mocha -r ts-node/register src/test/ts

0 投票
1 回答
24353 浏览

node.js - 使用ts-node执行时使用打字稿导入nodejs`fs`?

我正在尝试使用ts-node运行以下代码。

但是我得到:

我需要做什么才能允许 typescript 导入 fs 模块?

0 投票
0 回答
433 浏览

reactjs - 在单元测试中失败的 Typescript 导入

我正在使用 TypeScript 开发 React 应用程序,目前正在将单元测试与 Mocha 集成为测试运行程序。到目前为止,这工作得相当好,但我遇到了一个障碍,我可以使用任何一个......

我的测试将构建并运行。但是,应用程序构建失败了;

或者,我使用:

现在应用程序构建并运行良好,但我的测试失败并出现错误:

这意味着导入产生了 null。我已经检查了 react-tether 源,它使用的是默认导出,所以我认为第二种导入样式是正确的/首选的?

有关如何构建应用程序和测试的一些信息可能会有所帮助:

项目构建过程首先使用带有 ts-loader 的 Webpack,然后是 babel-loader。我把 JSX 编译留给了 babel,所以 tsconfig.json 是:

对于运行测试,我使用以下脚本:

这让 ts-node 编译文件,但使用不同的 tsconfig 以便不保留 jsx。test.tsconfig.json 看起来像这样:

0 投票
0 回答
547 浏览

javascript - Typescript 库未包含在编译/类型检查 Mocha 测试中

尝试在我的 Mocha 测试(见下文)中使用 Typescript 声明的类型“文件”(lib.dom.d.ts),并且当 ts-node 使用 tsconfig.json 文件编译时,未包含/检查相应的库。

我在“lib”tsconfig.json 数组中引用了 es6 和 dom 库(它们都有声明的文件类型)。(我已验证正在使用 tsconfig.json 并且没有其他 tsconfig.json)

- 错误 -

ReferenceError: File is not defined

-- NPM 脚本 --

"mocha --compilers ts:ts-node/register tests/**/*.tests.ts"

--测试--- `

`

-- tsconfig.json -- `

`

0 投票
1 回答
389 浏览

node.js - 无法让 Mocha、node.js 和 WebStorm 相互协作

我一直按照此处的说明使用 WebStorm 安装 Mocha:https ://www.jetbrains.com/help/webstorm/2017.1/testing-javascript-with-mocha.html#d194239e92

我已将配置设置为运行与模式匹配的文件:**/*.spec.js

我正在使用转换为 ES6 的 TypeScript 编写,其输出是我正在尝试测试的内容。但是,我收到了这个我不明白的错误,所以我真的不知道从哪里开始寻找解决方案。

我不明白它为什么要寻找“ts-node”,因为它只应该寻找“spec.js”文件。除此之外,我不明白为什么它在 ts-node 中寻找的文件夹丢失了。我已经卸载然后重新安装了 ts-node 几次,但都没有产生受追捧的文件夹......我不知道如何继续,甚至不知道需要什么进一步的信息来帮助解决这个问题。

任何帮助,将不胜感激。我只是想测试我的应用程序,事实证明这是一个真正令人头疼的问题。

这是错误:

/usr/bin/node /home/web/app/node_modules/mocha/bin/_mocha --ui bdd --reporter /opt/webstorm/ws/plugins/NodeJS/js/mocha-intellij/lib/mochaIntellijReporter.js * */*.spec.js TypeError: 指定路径不存在:/home/web/app/node_modules/ts-node/tests at resolveSync (/home/web/app/node_modules/ts-node/node_modules/tsconfig/ src/tsconfig.ts:72:9) 在 Object.loadSync (/home/web/app/node_modules/ts-node/node_modules/tsconfig/src/tsconfig.ts:140:16) 在 readConfig (/home/web/ app/node_modules/ts-node/src/index.ts:418:18) 在套件的 Object.register (/home/web/app/node_modules/ts-node/src/index.ts:176:18)。(/home/web/app/node_modules/ts-node/src/index.spec.ts:190:5) 在 Object.create (/home/web/app/node_modules/mocha/lib/interfaces/common.js: 114:19) 在 context.describe.context。套件中的上下文(/home/web/app/node_modules/mocha/lib/interfaces/bdd.js:44:27)。(/home/web/app/node_modules/ts-node/src/index.spec.ts:189:3) 在 Object.create (/home/web/app/node_modules/mocha/lib/interfaces/common.js: 114:19) 在 context.describe.context.context (/home/web/app/node_modules/mocha/lib/interfaces/bdd.js:44:27) 在 Object. (/home/web/app/node_modules/ts-node/src/index.spec.ts:13:1) 在 Module._compile (module.js:570:32) 在 Object.Module._extensions..js (module .js:579:10) 在 Module.load (module.js:487:32) 在 tryModuleLoad (module.js:446:12) 在 Function.Module._load (module.js:438:3) 在 Module.require (module.js:497:17) at require (internal/module.js:20:19) at /home/web/app/node_modules/mocha/lib/mocha.js:230:27 at Array.forEach (native)在摩卡。加载文件 (/home/web/app/node_modules/mocha/lib/mocha.js:227:14) 在 Mocha.run (/home/web/app/node_modules/mocha/lib/mocha.js:495:10) 在目的。(/home/web/app/node_modules/mocha/bin/_mocha:460:18) 在 Module._compile (module.js:570:32) 在 Object.Module._extensions..js (module.js:579:10 ) 在 Module.load (module.js:487:32) 在 tryModuleLoad (module.js:446:12) 在 Function.Module._load (module.js:438:3) 在 Module.runMain (module.js:604 :10) 在运行时 (bootstrap_node.js:390:7) 在启动时 (bootstrap_node.js:150:9) 在 bootstrap_node.js:505:3

进程以退出代码 1 结束

0 投票
0 回答
2824 浏览

node.js - E/launcher - 错误:TSError:无法编译打字稿

嘿伙计们,我面临以下问题:

我的项目建立在 Angular4 上,带有 typescript,使用量角器和 karma 进行 e2e 测试。但是几天以来,我不断收到以下错误:

据我了解错误消息,typscript 加载程序尝试转换非 ts 文件。可以肯定的是,在发布我的问题之前,我已经搜索了整个互联网,而且我的tsconfig.json中的 @types 似乎无法正常工作。

我已经在 github 上检查了 @types 和 tsconfig 以及相关问题的文档,但我认为这里的行为不正确。文档指出,

仅包含具有受支持扩展名的文件(例如,如果 allowJs 设置为 true,则默认为 .js 和 .jsx 的 .ts、.tsx 和 .d.ts)。

那它为什么要包含所有的 .json 文件呢?


tsconfig.json

myproject的详细信息:

节点 v7.4.0

npm v4.1.2

打字稿@2.3.4

量角器@5.1.2

我已经尝试过的:

  • 删除排除块,因为它包含与默认值相同:

当未指定时,“exclude”属性默认排除 node_modules、bower_components、jspm_packages 和目录。

  • 设置选项“allowJs:true”,导致文件加载器丢失(不是合适的解决方案)

  • 删除 typeRoots 以使用默认设置,导致相同的错误

我该如何解决这个问题,只加载适当的 .ts 文件?提前感谢您的帮助!

  • 添加"include": [ "src/**/*" ]"include": [ "src/**/*.ts" ]- 导致相同的错误

额外资源: