Npm 是否从CLI将包标记为“private”?

Npm 是否从CLI将包标记为“private”?,npm,package.json,Npm,Package.json,有没有一种方法可以快速将npm包标记为private,而不是事后手动编辑package.json 大概是这样的: npm——将私有设置为true 据我所知,npm config set用于为.npmrc文件设置与npm相关的配置值。但是,为了更改package.json中字段的值,您必须使用CLI工具来处理json,例如 您可以通过执行以下操作安装json: npm install -g json 然后,对于希望使私有字段为真的任何节点项目,您可以执行以下操作: json -I -f pack

有没有一种方法可以快速将npm包标记为
private
,而不是事后手动编辑
package.json

大概是这样的:

npm——将私有设置为true

据我所知,
npm config set
用于为
.npmrc
文件设置与npm相关的配置值。但是,为了更改package.json中字段的值,您必须使用CLI工具来处理json,例如

您可以通过执行以下操作安装json:

npm install -g json
然后,对于希望使私有字段为真的任何节点项目,您可以执行以下操作:

json -I -f package.json -e 'this.private=true'
或者,如果要在本地安装软件包,请改为:

./node_modules/.bin/json -I -f package.json -e 'this.private=true'
注意:对于窗口用户,请在必要时使用双引号并转义,例如:

希望这有帮助

我还发现,在创建包时,我可以正确地将包标记为
private

纱线初始化——私有

这对新的软件包很有用。

这是一个好主意,我想我可以
别名
快速使用它,但即使它说
json:updated“package.json”到位
,它似乎不起作用。嗨,大卫,我只是用一个虚拟的npm项目来尝试它,我用npm init创建了这个项目——是的,它对我很有效。能否从package.json中删除private字段并重试?我更新了我的答案,包括如果您希望通过本地安装来运行该工具。唯一需要注意的是,您必须位于package.json所在的基本目录中。如果您计划多次这样做,那么别名也是一个好主意。让我知道情况如何,谢谢你的帮助。我创建了一个虚拟的npm回购协议并进行了尝试,但仍然没有成功。无论如何,我很感激:)我在这里发布了我的终端结果:顺便说一句,我对全局软件包很满意,事实上,
json
似乎是我无论如何都会全局安装的软件包类型,比如
nodemon
(另一件很棒的事情)。这绝对是全局模块的完美用例。签出此链接:我没有意识到您在WIN上,因此您可能需要在必要时使用双引号和转义。无需单独安装
json
即可轻松完成此操作:
npx json-I-f package.json-e'this.private=true'