What is the difference between local and global module in Node.js? When to use local and global module?
Asked Answered
F

3

19

We can access local module using require function but cannot access global module through it. I read somewhere that to use global module we need to make it local then import it through require function. So if we cannot access global module directly, then what is the need of using it.

Frodeen answered 9/4, 2015 at 5:29 Comment(1)
How does your code look like?Killy
B
29

You should:

  • Install a module locally if you're going to require() it.
  • Install a module globally if you're going to run it on the command line.
Brattice answered 9/4, 2015 at 10:31 Comment(5)
Thanks for your reply. Can you give a small example of running globally installed module through command line.Frodeen
Personally I'm using nodemon installed as a global module (npm install -g nodemon) to run the server and automatically restart it when source code changes (perfect for development). So in this case instead of e.g. node server.js I execute nodemon server.js ;)Brattice
Thanks again for your reply tomrac. But this is a specific use of global module. Can you please tell me the general use of it ?Frodeen
I think good explanation you can find here: blog.nodejs.org/2011/03/23/npm-1-0-global-vs-local-installation. When it comes to me, I always use local modules unless I want to use it in shell or on the command line. Then I don't have problems with versioning :)Brattice
Thank you tomrac. This link really helped me to understand the concept. :)Frodeen
D
4

I think in my opinion the modules which you are going to require in your code must be in local to your project or you can say must be present in your node_modules directory

and the modules which works as command must be installed globally. examples are exress-generator,jsdocs,mocha

Dorsum answered 20/5, 2016 at 14:54 Comment(0)
C
1

A general use of global node module to my experience will be:

If all my applications that uses that same node module (of the same version or I do not care which version , latest is fine for me), then I will install that node-module globally. One good example.example will be node module that I use it for testing -- e.g. mocha.

Cheerless answered 13/4, 2015 at 23:52 Comment(2)
Is there any way to access the global node-module. If No, then there is no reason of installing it. If Yes, then how I will use it ?Frodeen
Of course you can access it, otherwise why bother installing them, I think tomarc already explains some usages.Cheerless

© 2022 - 2024 — McMap. All rights reserved.