node.js - npm install 命令 - 请解释一下

标签 node.js react-native npm

我开始学习 React Native,并且对 npm 包管理器非常陌生。我读到 npm 可以在本地或全局安装软件包,但我试图理解这是什么意思。 我正在阅读此页https://docs.npmjs.com/getting-started/installing-npm-packages-locally ,请有人给我解释一下这是什么意思。

If you want to depend on the package from your own module using something like Node.js' require, then you want to install locally, which is npm install's default behavior. On the other hand, if you want to use it as a command line tool, something like the grunt CLI, then you want to install it globally.

由于我对 npm、React Native、Node 非常陌生(从未使用过),因此我对这句话的第一句话感到困惑。 “我自己的模块”是什么意思?

如果我想使用 CRNA,我想我必须全局安装它?

如果我要在本地或全局安装一个软件包(例如 CRNA),我可以在 MacBook Pro 上的什么位置看到它的安装情况?

最佳答案

本地安装和全局安装之间的区别在于,本地安装将其放入项目的 node_modules 目录中(这就是所谓的“您自己的模块”),而全局安装则将其放入系统目录(具体位置取决于您的操作系统,在 OSX 上应为 /usr/local/lib/node_modules)。

基本上:

  • 本地安装将已安装的模块与您的项目联系起来:您计算机上的其他项目无法获取它,但如果您的项目复制到另一台计算机,该模块也会安装在那里

  • 全局安装将其绑定(bind)到您的计算机:您可以在所有 您的项目在您的计算机上,但如果您的项目被复制到 在另一台计算机上安装的模块将不存在

是的,CRNA 应该全局安装,因为它是通用工具而不是项目的库依赖项。

关于node.js - npm install 命令 - 请解释一下,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47381606/

相关文章:

node.js - 从 Node.js 为 Dialogflow 发送的默认响应负载是什么

php - 验证在 php 中生成的 nodejs 中的密码哈希

npm - 获取错误 : Cannot find module './src/init' when trying to initialize a react native app

react-native - 在 macOS Big sur 上安装 pod 失败

reactjs - 我如何 `npm link` 与对等依赖项的 typescript 依赖项?

git - 使用标签从 github 安装 NPM

node.js - 在adonis js中强制过期jwt token

node.js - 解释 'DEBUG=myapp:* npm start' 实际上在做什么

javascript - 离开页面时 React Native 不运行函数

react-native init 给出 ESOCKETTIMEDOUT 错误