node.js - yargs.command 不起作用(错误消息 : yargs. 命令不是函数)

标签 node.js yargs

我正在尝试创建 yargs 命令,当我运行应用程序时出现错误。

当我运行以下命令时:

node app.js add

在我的node.js代码上:

const yargs = require('yargs')
yargs.command({
    command:'add',
    describe:'Adding command',
    handler:function(){
        console.log('Adding notes')
    }
}).parse()

console.log('yargs.argv')

错误:

C:\node\notes-app\app.js:3
yargs.command({
      ^
**TypeError: yargs.command is not a function**
    at Object.<anonymous> (C:\node\notes-app\app.js:3:7)
    at Module._compile (internal/modules/cjs/loader.js:1063:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1092:10)
    at Module.load (internal/modules/cjs/loader.js:928:32)
    at Function.Module._load (internal/modules/cjs/loader.js:769:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:72:12)
    at internal/main/run_main_module.js:17:47

  • Yargs版本:1.1.0
  • Node 版本:v14.16.0
  • VS 代码版本
  • 1.55.2(用户设置)操作系统:Window 10

编辑: (I have already viewed this question but it didn't help because already added .parse())

最佳答案

尝试以下几行。

const yargs = require('yargs')
const {hideBin} = require('yargs/helpers')
yargs(hideBin(process.argv)).command({
    command:'add',
    describe:'Adding command',
    handler:function(){
        console.log('Adding notes')
    }
}).parse()
console.log('yargs.argv')

关于node.js - yargs.command 不起作用(错误消息 : yargs. 命令不是函数),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67418793/

相关文章:

node.js - 我正在尝试运行 yargs 命令,但它不起作用

javascript - 如何在方法 node.js 中获取方法名称

node.js - 如何在运行时使用 Node.js Azure 函数命中表存储来应用过滤器?

node.js - [yargs] 中的命令和选项有什么区别

node.js - yargs 仅采用命令行输入字符串的第一个单词

node.js - yargs:需要至少一个没有相应标志的参数

javascript - yargs - require 函数以无法静态提取依赖项的方式使用

javascript - CSV 文件读取、过滤和处理并在 Node.js 中以控制台表形式显示

javascript - 使用 Node.js 在流中进行异步调用的问题

javascript - 如何将 emscripten 浏览器输入法从 window.prompt 更改为更合理的输入法?