我正在学习node.js,我遇到了第一个问题。当我安装yargs并尝试创建yargs命令时,它不会显示在终端中。当我在终端中键入'node app.js mycommand'时,它只返回我的args数组,没有我的命令,但是如果我键入'node app.js --help',则返回每个命令。我在做错什么吗?
const yargs = require('yargs')
yargs.command({ 命令:“ mycommand”, 描述:“ mydesc”, 处理程序:()=> {console.log('some text')}})
当我输入'node app.js mycommand'时我想拥有console.log,但实际上我只有一个args数组
{_:['mycommand'],'$ 0':'app.js'}
答案 0 :(得分:0)
您应在代码末尾添加.parse()
。就是这样。
const yargs = require('yargs')
yargs.command({
command: 'mycommand',
describe: 'mydesc',
handler: () => { console.log('some text') } }).parse()
如果您有太多这样的命令,则不要在每个命令中都使用parse(),只需在代码下方输入以下内容即可:
yargs.parse()
或在您的代码下方输入
console.log(yargs.argv)
但是,这也会打印出“ argv”(参数向量)。
答案 1 :(得分:0)
使用yargs.argv;
或.parse()
yargs.command({
command: 'add',
describe: 'This is add param',
handler: function() {
console.log("This is add notes command ");
}
});
yargs.argv;
或
yargs.command({
command: 'add',
describe: 'This is add param',
handler: function() {
console.log("This is add notes command ");
}
}).parse();
运行它...
节点app.js添加
答案 2 :(得分:0)
您的代码是只写的。但是您没有显示命令。这就是您什么都看不到的原因。您可以通过两种方式解决此问题。
[*np.sort(df['Age'].unique())[:2]]
#[18, 23]
console.log(yargs.argv)
这两个都应该在完成代码后添加。
PS:如果使用yargs.parse()
,则将打印argv对象以及所需的结果。
如果仍然感到困惑,请随时检查以下代码
console.log(yargs.argv)