I\'m getting an error when trying to use any global module, exemple:
Error: Cannot find module \'express\'
at Function.Module._resolveFilename (module.js:
Just to quote from here:
https://www.npmjs.org/doc/files/npm-folders.html
I'm working in Linux, but when I require express, I'm doing so with a relative path to where it is installed and it works fine:
var express = require('./public/node_modules/express');
I'm sure the same thing would work with a windows path as well. If you want to be more explicit and declare an absolute path, that would be the nuclear option to make sure you always know exactly where your module is being loaded from regardless of where your scripts are being run from.
If you still have a problem after using an explicit path, I don't know what the problem might be. . .
I was getting same error on Windows7/x64 and adding following in the environment variable resolved the issue:
NODE_PATH=C:\Users\[USERNAME]\AppData\Roaming\npm\node_modules
*Replace [USERNAME] with your actual system username
You should install Express locally:
npm install express
Then require it as you did:
var express = require('express')
another option will be to run npm install --save express