You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用npm pkg set命令时如何保持属性类型不变?

使用npm pkg set时保持JSON属性类型的解决方法

我们使用最新版本的npm,执行以下命令:

npm pkg set 'prettier.printWidth'=100
npm pkg set 'prettier.singleQuote'=true

期望在package.json中得到的结果:

// package.json
{
  // ...

  "prettier": {
    "singleQuote": true,
    "printWidth": 100
  }
}

但实际得到的结果中属性被转为字符串类型:

// package.json
{
  // ...

  "prettier": {
    "singleQuote": "true",
    "printWidth": "100"
  }
}

解决方法

在执行npm pkg set命令时添加--json参数,让npm将传入的值解析为对应JSON类型:

npm pkg set 'prettier.printWidth'=100 --json
npm pkg set 'prettier.singleQuote'=true --json

或者直接传递完整的JSON对象一次性设置:

npm pkg set prettier='{"printWidth":100,"singleQuote":true}'

原因说明

默认情况下,Shell会将输入的100、true作为字符串传递给npm,导致写入package.json时被保留为字符串类型。添加--json参数后,npm会按照JSON规则解析这些值,自动识别数字、布尔类型,从而保持正确的属性类型。

内容的提问来源于stack exchange,提问作者user14082

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 11:16:01