在运行时,有没有办法在关键字中包含空格;npm init“;?
我知道我可以随时回头编辑package.json,但我忍不住好奇:有没有办法运行在运行时,有没有办法在关键字中包含空格;npm init“;?,npm,npm-init,Npm,Npm Init,我知道我可以随时回头编辑package.json,但我忍不住好奇:有没有办法运行npm init并在表单的“关键字”部分输入带有空格的短语?例如,输入“平台api”将导致单词“platform”和“api”,前导和尾随引号将被转义 简短答复: 不,很遗憾,您不能通过包含空格的命令(如platform api)为关键字输入短语,并期望它成为package.json文件的结果数组中的单个元素 下面的示例显示了package.json中所需的有效结果: { ... “关键词”:[ “平台api” ],
npm init
并在表单的“关键字”部分输入带有空格的短语?例如,输入“平台api”将导致单词“platform”和“api”,前导和尾随引号将被转义 简短答复:
不,很遗憾,您不能通过包含空格的命令(如platform api
)为关键字输入短语,并期望它成为package.json文件的结果数组中的单个元素
下面的示例显示了package.json中所需的有效结果:
{
...
“关键词”:[
“平台api”
],
...
}
注意:虽然上面显示的关键字示例在package.json
中完全有效,但无法通过使用npm init
命令从命令行输入来实现。我也会考虑:
- 正如您所说,回顾性地将其输入
package.json
- 或者,只需使用连字符,即在使用
命令时,通过命令行输入/typenpm init
。-注意:这将导致package.json中出现platform api
,而不是平台api
平台api
长答覆: 为什么不可能呢? 使用
npm init
命令无法通过命令行实现所需的结果,因为该工具使用的包中包含底层源代码
让我们看看名为default input.js
的文件中代码的相关部分。如下所示:
摘自default input.js
if(!package.keywords){
exports.keywords=yes?“”:提示('keywords',函数){
如果(!s)返回未定义
如果(Array.isArray(s))s=s.join(“”)
if(typeof s!=“string”)返回s
返回s.split(/[\s,]+/)//