当前位置: 首页 > 知识库问答 >
问题:

带有两个命令的单个npm包

容修贤
2023-03-14

我有一个由这个JSON描述的node.js包:

  "name": "mycommand",
  "main": "index.js",
  "bin": {
    "mycommand": "./index.js",

index.js文件包含以下代码:

#!/usr/bin/env node
const app = require('./src/app.js')
const { Logger } = require('./utils/Logger')
app.init()

app.js包含基于YARGS的命令行工具的代码。

现在,我想在这个包中添加第二个命令,但我不知道应该如何继续,因为只能有一个“main”。

有谁有例子吗?

共有1个答案

阎璞瑜
2023-03-14

也许您正在寻找脚本而不是bin

现在,我想在这个包中添加第二个命令,但我不知道应该如何继续,因为只能有一个“main”。

bin映射与主文件无关。

您的命令正在得到符号链接,您可以简单地添加更多:

"bin": {
    "mycommand": "./index.js",
    "my-other-command": "./other-command.js",

也可以使用mycommand并使用process.argv解析脚本app.js中的参数:

https://nodejs.org/en/knowledge/command-line/how-to-parse-command-line-arguments/

 类似资料:
  • 问题内容: 我有这样的HTML结构: 当前,当我单击带有ID的时,两个函数都被触发,但是我希望那个函数被触发。我怎样才能做到这一点? 问题答案: 您需要做的就是停止事件传播/冒泡。 此代码将帮助您: 如果您的和函数如下所示,则单击DIV 时您只会进入控制台。如果没有,您将在控制台输出窗口中跟随。

  • 我在我的项目中包含了2个BC JAR:bcpkix-jdk15on-1.47.jar和bcprov-jdk15on-157.jar。 作为代码中的第一行,我添加了: 行发生异常: 有没有什么方法可以让我定期包括这两个BouncyCastle罐子?

  • NPM和Yarn命令对比 npm 命令 Yarn 命令 备注 npm install yarn install 安装依赖包 (N/A) yarn install —flat 单版本模式 (N/A) yarn install —har 生成har文件,记录安装时网络请求性能 (N/A) yarn install —no-lockfile 不读写lockfile方式 (N/A) yarn instal

  • 例如,我想通过npm脚本运行两个命令,第一个命令启动节点服务器。我发现第一个命令执行成功,但第一个命令停止执行第二个命令。如何才能成功执行这两个命令? 诺德蒙/bin/www启动节点服务器,而gulp dev不执行。

  • 我试图在ubuntu服务器上安装npm和nodejs,但注意到不知何故,在运行后,我最终得到了两个版本。我知道这一点,因为当我运行时,它会返回,而当我运行时,它返回。在我继续之前,我想把这个设置好。有人明白我为什么会有两个版本吗?我的理解是,安装nodejs也应该安装npm,但这只允许我以更高的权限运行npm,我知道我不应该这样做。谁能让我知道我做错了什么?谢谢你。