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.
3 Answers
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.
5 Comments
Badal
Thanks for your reply. Can you give a small example of running globally installed module through command line.
Tomasz Racia
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 ;)Badal
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 ?
Tomasz Racia
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 :)
Badal
Thank you tomrac. This link really helped me to understand the concept. :)
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.