3

如何使用全局包安装通过 ts-node 运行 ts 文件?例如,我有要发布的打字稿应用程序,并将其用作全局包。

在 package.json 文件中有一个 bin 属性,我们可以在其中指定可执行文件的命令,安装后将设置到 PATH 变量中。

在.js 文件的情况下,没有问题。您只需要在 bin.xml 中指定所需的文件。

js文件

安装后,会出现使用我们在 bin.xml 中指定的命令启动我们的应用程序的脚本。显然,从截图来看,node.exe 使用了我们的 js。文件作为参数

js结果

但是如何对 ts 做同样的事情。圆角?我可以使用安装在本地 node_modules 中的 ts-node 运行 ts 文件

tsrun

但我不能用 bin 属性做到这一点。下面的屏幕截图会导致错误。

错误

需要链接到可执行文件。但就其本身而言。没有 ts-node 就无法执行。

是否可以在 bin 中指定 ts. 文件需要通过 ts-node 吗?还是不用全局安装ts-node就解决这个问题?

4

1 回答 1

9

您可能必须有一个包含以下内容的 js 入口文件:

#! /usr/bin/env node

require('ts-node').register();
require('./index.ts');
于 2019-10-21T18:01:39.453 回答