8

Как решить ошибку "Невозможно найти модуль" в Node.js?

1

После того как я загрузил модуль с GitHub и следовал инструкциям по его сборке, я попытался добавить его в существующий проект с помощью команды:

> npm install ../faye

Вроде как это сработало, так как вывод команды npm list показывает:

/home/dave/src/server
└─┬ [email protected]
  ├── [email protected]
  ├── [email protected]
  └── [email protected]

Однако при запуске приложения с помощью команды:

> node app.js

Я получаю ошибку:

node.js:201
        throw e; // process.nextTick error, or 'error' event on first tick
              ^
Error: Cannot find module 'faye'
    at Function._resolveFilename (module.js:334:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:357:17)
    at require (module.js:368:17)
    at Object.<anonymous> (/home/dave/src/server/app.js:2:12)
    at Module._compile (module.js:432:26)
    at Object..js (module.js:450:10)
    at Module.load (module.js:351:31)
    at Function._load (module.js:310:12)
    at Array.0 (module.js:470:10)

Я действительно хочу понять, что происходит, но не знаю, куда двигаться дальше. Есть ли какие-то предложения?

5 ответ(ов)

6

У меня была очень похожая проблема. Удаление всей папки node_modules и повторная установка помогли мне:

rm -rf node_modules
npm install
1

Если вы столкнулись с ошибкой:

{ [Error: Cannot find module '/root/.npm/form-data'] code: 'MODULE_NOT_FOUND' }

вы можете решить эту проблему, выполнив команду:

npm install --save form-data

Это установит отсутствующий модуль form-data и сохранит его в вашем package.json.

0

Чтобы решить проблему и установить все пакеты, выполните следующие команды:

rm package-lock.json
rm -r node_modules
npm i

Это удалит файл package-lock.json и папку node_modules, после чего команда npm i заново установит все необходимые зависимости.

0

Для пользователей TypeScript: Если вы импортируете встроенный модуль Node (например, http, path или url) и получаете ошибку вроде "Не удается найти модуль "x", то эту ошибку можно исправить, выполнив команду

npm install @types/node --save-dev

Эта команда импортирует определения TypeScript для NodeJS в ваш проект, что позволит вам использовать встроенные модули Node.

0

Я столкнулся с этой ошибкой вчера. Потребовалось некоторое время, чтобы понять, что поле main в package.json указывало на файл, который я переместил. После того как я обновил это значение, ошибка исчезла, и пакет заработал.

Чтобы ответить на вопрос, пожалуйста, войдите или зарегистрируйтесь