Подтвердить что ты не робот

Nodejs Не удается найти модуль

Я получаю сообщение об ошибке при попытке использовать любой глобальный модуль, Exemple:

Error: Cannot find module 'express'
    at Function.Module._resolveFilename (module.js:338:15)
    at Function.Module._load (module.js:280:25)
    at Module.require (module.js:362:17)
    at require (module.js:378:17)
    at Object.<anonymous> (C:\BitNami\wappstack\...\test\app.js)
    at Module._compile (module.js:449:26)
    at Object.Module._extensions..js (module.js:467:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Module.runMain (module.js:492:10)

Я установил команду express:

npm install -g express

My app.js:

var express = require('express');

И запустите его с помощью windows powershell или node.js окна командной строки:

node app.js

не знаю, что происходит не так, я читал что-то о переменных среды в окнах, может ли это быть?

Разрешено/обновлено

Проблема: переменные среды Windows не были настроены для папки npm. Найдите свою папку npm и добавьте путь в переменные среды.

4b9b3361

Ответ 1

Вы должны установить Express локально:

npm install express

Затем требуйте его, как и вы:

var express = require('express')

Ответ 2

Просто процитировать здесь:

https://www.npmjs.org/doc/files/npm-folders.html

  • Установите локально, если вы захотите() это.
  • Установите глобально, если вы собираетесь запустить его в командной строке.
  • Если вам нужны оба, установите их в обоих местах или используйте npm link.

Ответ 3

Я получал такую ​​же ошибку в Windows7/x64, и добавление следующего в переменную среды разрешило проблему:

NODE_PATH=C:\Users\[USERNAME]\AppData\Roaming\npm\node_modules

* Замените [USERNAME] своим фактическим именем системы

Ответ 4

Я работаю в Linux, но когда мне требуется экспресс, я делаю это с относительным путем к тому, где он установлен, и он отлично работает:

var express = require('./public/node_modules/express');

Я уверен, что то же самое будет работать и с окном. Если вы хотите быть более явным и объявить абсолютный путь, это был бы ядерный вариант, чтобы убедиться, что вы всегда точно знаете, где загружается ваш модуль, независимо от того, где выполняются ваши сценарии.

Если у вас все еще есть проблема после использования явного пути, я не знаю, в чем проблема.,

Ответ 5

другой вариант - запустить npm install --save express