将npm脚本用作“ bin”

问题描述 投票:3回答:1

我有一个用TypeScript编写的命令行应用程序,其中有一些在package.json中定义的npm脚本。

  "scripts": {
    "start": "ts-node src/index.ts",
    "start-args": "ts-node src/index.ts -- some args"
  },

我想链接和命名TypeScript文件,以便可以轻松地调用该程序,因此我正在寻找"bin"文件中的package.json键之类的东西。

  "scripts": {
    "start": "ts-node ./src/index.ts",
    "start-args": "ts-node src/index.ts -- some args"
  },
  "bin": {
    "foobar": "./src/index.ts",
    "bazqux": "./src/index.ts some args"
  }

[ts-node已本地安装。

但是,由于TypeScript本身不受节点支持,因此仅在./src/index.ts上放一个shebang将不起作用。

我还希望能够使用默认参数创建别名命令,例如上面的bazqux。当我以全局方式链接或安装该软件包时,可以像在存储库中运行“ npm run start”一样全局运行“ foobar”。或全局运行“ bazqux”,因为它是“ npm run start-args”。

如何实现?

node.js typescript npm
1个回答
0
投票

如果ts-node在路径变量中,则可以使用

#!/usr/bin/env ts-node
console.log("Hello World");

结帐回购:https://github.com/deepakshrma/ts-cli

© www.soinside.com 2019 - 2024. All rights reserved.