webentwicklung-frage-antwort-db.com.de

Kann Modul in Nodejs nicht finden

module.js:340
    throw err;
          ^
Error: Cannot find module './models/todo'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:364:17)
    at require (module.js:380:17)
    at Object.<anonymous> (C:\Users\Basel\Desktop\Todo List\routes\api.js:1:74)
    at Module._compile (module.js:456:26)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.require (module.js:364:17)

C:\Users\Basel\Desktop\Todo List>

Warum startet diese Anwendung nicht? Ich habe bereits eine globale npm-Installation ausprobiert.

17
user2993058

In ./models/todo Gibt der Punkt an, dass der Knoten in dem Ordner dasselbe, in dem sich api.js Befindet, nach \Todo List\routes\models\todo.js Sucht. Dies beginnt nicht im Stammverzeichnis der Anwendung. Um dies zu fordern, benötigen wir zwei Zeiträume, um ein Level zu erklimmen und den App-Pfad anzugeben:

var todo = require('../app/models/todo');
31
matth

möglicherweise haben Sie den Systemwert nicht festgelegt: NODE_PATH; Es sollte auf Ihren globalen Modulstandort verweisen.

unter Linux: export NODE_PATH=/usr/local/lib/node_modules/ funktioniert gut für mich;

14
Chopper Lee