How are packages installed with the command
$ npm i -g <package_name>
different from the packages installed with the following command?
$ npm i <package_name>
CodePudding user response:
The main difference between the locally installed and globally installed packages is that
locally installed packages are kept inside the same directory that you run the
npm install <package_name>
and these packages are kept in thenode_modules
folder under that same directory.globally installed packages are all kept in the same directory(the exact location depends upon your system setup). These packages are kept in the same directory regardless of where you run the
npm install -g <package_name>
from.
Generally, it is suggested to install packages locally since updating a global package causes every application using that specific package to use the updated package and you might have to do the maintainence work, which is basically a nightmare.
CodePudding user response:
Locally installed packages are installed under node_modules
folder. They are not accessible by other npm projects you have. Each npm project, initialized with npm init
, has its own node_modules
folder.
On the other hand, globally installed packages are installed in the same folder of your system.
When you import a package with
require('package-name');
You're importing it from your local packages under node_modules
.
It's advisable to avoid installing packages globally. Usually, you only install global packages when they provide CLI functionalities (Scripts that you run from you terminal, using bash, shell, etc).