1

I have my project at desktop. And i have deleted the node_modules folder and reinstall it. But it is not working. Please help me resolve it. I have tried other methods on stack-overflow but they are not working for me i don't know whats wrong. Please help for sake of my final project. my folder setup:

Ols
   +--app.js
   +--package.json
   +--package-lock.json
   +--views
            +--allejs
   +--public
            +--cs
            +---images
   +node_modules

var express = require("express");
var app = express();
var bodyParser = require("body-parser");
app.use(express.static("public"));
mongoose.connect("mongodb://localhost/ols");
app.use(bodyParser.urlencoded({extended: true}));
app.set("view engine", "ejs");


app.get("/", function(req, res) {
 res.render("ols");
});
app.get("/home", function(req, res) {
 res.render("ols");
});
app.get("/alLlaptops", function(req, res) {
 res.render("allLaptops");
});
app.get("/contact", function(req, res) {
 res.render("contact");
});
app.get("/signup", function(req, res) {
 res.render("signup");
});
app.get("/login", function(req, res) {
 res.render("login");
});
app.get("/addtocart", function(req, res) {
 res.render("addtocart");
});


app.listen(3000, function() {
 console.log("Server is listening!!!");
});
 module.js:538
        throw err;
        ^
        Error: Cannot find module 'C:\Users\Haider Ali\Desktop\OLS\OLS\views\app.js'
                at Function.Module._resolveFilename (module.js:536:15)
                at Function.Module._load (module.js:466:25)
                at Function.Module.runMain (module.js:676:10)
                at startup (bootstrap_node.js:187:16)
                at bootstrap_node.js:608:3
CopyPaste
  • 11
  • 1
  • 1
  • 4
  • Possible duplicate of [NPM global install "cannot find module"](https://stackoverflow.com/questions/12594541/npm-global-install-cannot-find-module) – Anis D Mar 02 '18 at 10:10
  • Where are you running your start command from in your file structure? It seems like you're inside the views directory, tried to run `node app.js` when in fact you need to be one level up. Can you give the print out of where you are in your directory structure, plus what all the files are inside that directory? – Elliot Blackburn Mar 02 '18 at 10:16
  • structure is given in question – CopyPaste Mar 02 '18 at 11:26

1 Answers1

1

Check your package.json file. It looks like your app.js and the package.json are not in the same folder.

{
  "name": "final-project",
  "version": "1.0.0",
  "description": "",
  "main": "app.js",
  "scripts": {
    "start": "node app.js" // <--- node can't find app.js file
  },
  "keywords": [],
  "author": "",
  "license": "ISC"
}

You must change that to:

"scripts": {
    "start": "./views/app.js" // or wherever app.js file is
}
Utkarsh Bhatt
  • 1,536
  • 2
  • 14
  • 23
  • Thank you but my app.js is not in views it outside. I think json script should find app.js by default when we try to install json package. And they are in same folder. – CopyPaste Mar 02 '18 at 11:45
  • @CopyPaste What command are you using to run the app? You can see the `Error: Cannot find module 'C:\Users\Haider Ali\Desktop\OLS\OLS\views\app.js`. Node thinks that your app.js is inside the `/views` directory. – Utkarsh Bhatt Mar 02 '18 at 12:43