Я впервые балуюсь с Node.js и решаю d для создания простого приложения с помощью экспресс. Я следовал инструкциям из githubв пустом каталоге, например:
npm install -g express
express
npm install -d
node app.js
При переходе к localhost:3000
я получаю следующую ошибку:
Express
500 Error: Cannot find module './lib/jade'
at Function._resolveFilename (module.js:332:11)
at Function._load (module.js:279:25)
at Module.require (module.js:354:17)
at require (module.js:370:17)
at Object. (C:\dev\gravity_kata\node_modules\jade\index.js:4:5)
at Module._compile (module.js:441:26)
at Object..js (module.js:459:10)
at Module.load (module.js:348:31)
at Function._load (module.js:308:12)
at Module.require (module.js:354:17)
При поиске в node_modules \jade\lib
Я вижу все файлы библиотеки Jade, но не вижу папки jade
.Поэтому я создал папку под lib с именем jade и переместил туда файлы библиотеки, и теперь мое приложение по умолчанию работает.
Поскольку у меня почти нет опыта работы с Node.js и Express, я почти уверен, что сделал что-то не так. Кто-нибудь знает, что здесь происходит?
Редактировать:
Я углубился в код Джейда. В файле index.js Jade требуется lib\jade
, и в папке lib не было файла jade.js
. Что ж, в этом проблема, но почему отсутствует файл jade.js? При извлечении исходного кода Jade из npm в каталоге lib находится файл jade.js. Я скопировал папку lib из загруженного источника в модуль Jade для своего проекта, и теперь он отлично работает.
Итак, по какой-то причине npm не загружает файл jade.js. Версия в файле packages.json
соответствует исходному коду, который я вытащил, 0.21.0
. Кто-нибудь знает, почему это произошло?