繁体   English   中英

npm install -g 同时更新 package.json?

[英]npm install -g while also updating package.json?

是的,我知道, npm install -g不应该更新package.json 但我需要一些能产生类似效果的东西。

我的问题如下:我想将所有内容分开,所以我想在虚拟环境中安装节点 npm 和每个 package。 我通过运行来做到这一点:

  1. $ python -m venv <venv_name>
  2. $ <venv_name>\scripts\activate
  3. $ pip install nodeenv
  4. $ nodeenv -p

这四步在虚拟环境中下载nodejs和npm。

我遇到的问题是,每当我想通过 npm 安装 nodejs package 时,我必须在虚拟环境中“全局”安装它,否则它不起作用。 为了说明这一点,我将向您展示当我正常使用安装 package 时会发生什么:

$ npm install express

或者

$ npm install nodmeon

这将保存 nodemon 或 express 在依赖项中,但是它不会将它们识别为命令,例如:

$ nodemon run start将返回'nodemon' is not recognized as an internal or external command

但是当我使用npm install -g安装软件包时,这不会发生。 当我这样做时,它们工作得很好,但问题是它们不会保存在package.json中。

我一直在做的是安装两次,一次全局安装,一次正常安装,以便可以将其保存在 package.json 中。

我的问题是:我的全局安装是否可以在 package.json 中输出? 或者你有什么方法可以推荐我来解决这个问题?

即使没有全局安装,您也可以运行包 cli。 像nodemon,knex等。

如果您使用的是npm ,则可以使用npx

npx nodemon

如果你正在使用yarn ,你可以使用yarn

yarn nodemon

https://blog.scottlogic.com/2018/04/05/npx-the-npm-package-runner.html

npx 是一个用于运行 npm 包的工具,它:位于本地 node_modules 文件夹中或未全局安装。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM