Pritam Shrestha
Pritam Shrestha

Reputation: 486

I ecounter this error all the time in node.js. Error: Cannot find module

I am trying to learn node.js and these are my files and errors. I don't know what actually is wrong. I am learning a tutorial from Programming with Moss.

app.js

var logger = require('./logger');

console.log(logger);

logger.js

function log() {
    console.log("hello");
}

module.exports.log = log;
internal/modules/cjs/loader.js:1017
  throw err;
  ^

Error: Cannot find module './logger'
Require stack:
- C:\Users\pshre\OneDrive\Desktop\nodejs demo\first-app\app.js
    at Function.Module._resolveFilename (internal/modules/cjs/loader.js:1014:15)   
    at Function.Module._load (internal/modules/cjs/loader.js:884:27)
    at Module.require (internal/modules/cjs/loader.js:1074:19)
    at require (internal/modules/cjs/helpers.js:72:18)
    at Object.<anonymous> (C:\Users\pshre\OneDrive\Desktop\nodejs demo\first-app\app.js:1:14)
    at Module._compile (internal/modules/cjs/loader.js:1185:30)
    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1205:10)
    at Module.load (internal/modules/cjs/loader.js:1034:32)
    at Function.Module._load (internal/modules/cjs/loader.js:923:14)
    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12) {
  code: 'MODULE_NOT_FOUND',
  requireStack: [
    'C:\\Users\\pshre\\OneDrive\\Desktop\\nodejs demo\\first-app\\app.js'
  ]
}

Upvotes: 0

Views: 934

Answers (1)

Rockey
Rockey

Reputation: 401

Instead of using

var logger = require('/logger');

Use

var logger = require('./logger'); //Notice the dot there

To put it simply the dot references the current path, so if you path is something like /home/user/project it would point to the /home/user/project/logger.js file.

EDIT: Make sure your app.js and logger.js files are in the same directory.

Upvotes: 1

Related Questions