.args ._ [0]中的._ [0]有什么作用(需要指向文档的指针)?

问题描述 投票:2回答:2

我一直在尝试一些节点代码(试图构建一个小的CLI),并遇到了这种下划线符号,这对我来说很陌生。只需在命令行上使用不同的参数,

我意识到这有点像“提取”第一个分配给“ template”键的字符串,但是我之前从未见过,也无法在此找到文档。这是本机javascript / node吗?

谢谢!


function parseArgumentsIntoOptions(rawArgs) {
 const args = arg(
   {
     '--git': Boolean,
     '--yes': Boolean,
     '--install': Boolean,
     '-g': '--git',
     '-y': '--yes',
     '-i': '--install',
   },
   {
     argv: rawArgs.slice(2),
   }
 );
 return {
   skipPrompts: args['--yes'] || false,
   git: args['--git'] || false,
   template: args._[0],                                // <<<<< Right here
   runInstall: args['--install'] || false,
 };
}

我没有安装破折号或下划线。取自此awesome tutorial

javascript node.js command-line-arguments
2个回答
0
投票

arg库的文档中:

未由选项使用的所有参数(通常称为“额外”参数)都添加到arg中,该参数始终是一个数组(即使没有传递任何额外的参数,在这种情况下也会返回一个空数组)。

所以result._是第一个额外的参数。


0
投票

没关系。我没有第一次点击args._[0]库,这确实是我的only导入模块,因为我出于某种原因用Google搜索了npm arg

下划线实际上只是您指定的任何键未使用的其余参数的“容器”:

未由选项使用的参数(通常称为“额外”参数)被添加到node arg

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