关于typescript:tsnode-学习笔记-如何解决在-Windows10-下不能直接运行-tsnode-的问题

7次阅读

共计 752 个字符,预计需要花费 2 分钟才能阅读完成。

ts-node 是 Node.js 的 TypeScript 执行引擎和 REPL。

它 JIT 将 TypeScript 转换为 JavaScript,使您无需预编译即可间接在 Node.js 上执行 TypeScript。这是通过挂钩 node 的模块加载 API 来实现的,使其可能与其余 Node.js 工具和库一起无缝应用。

留神,在 windows 操作系统里,间接运行 ts-node, 会报错:

‘ts-node’ is not recognized as an internal or external command,
operable program or batch file.

很多人倡议采取全局装置 ts-node 的办法来解决这个问题,但全局装置并不是一个好的解决方案。

参考这个 StackOverflow 探讨.

我不倡议在您本人的模块中依赖全局装置的 ts-node,因为如果你这样做,那么装置你的模块的任何人都须要全局装置 ts-node(仅仅一个一般的 npm install 是不够的)而后如果两个模块须要全局装置 ts-node 之类的货色,你可能就会遇到版本抵触的问题。

为防止这种状况,您的所有依赖项都应在 package.json 中定义,并在本地装置在 node_modules 中。

有一个鲜为人知的命令 npx 用于从本地装置在 node_modules 中的模块运行二进制文件。

在 SAP Spartacus 里,ts-node 被用来间接执行我的项目内的 .ts 文件。一个例子如下:

loadtest:ssr,定义在如下文件里:

我即便在根目录下执行 yarn loadtest:ssr, 也能间接启动嵌套的 core-libs 目录下的 package.json 里定义的 script.

原来在根目录的 package.json 下也增加了一条同名 script:

更多 Jerry 的原创文章,尽在:” 汪子熙 ”:

正文完
 0