Express Framework дает очень странную ошибку - PullRequest
12 голосов
/ 02 марта 2011

Я пытаюсь использовать Express в узле, установить все в порядке, скомпилирован, получил npm и установил Express с помощью:

npm установить экспресс

Проблема в том, что каждый раз, когда я пытаюсь «потребовать» это, это выдает мне ошибку! Взгляните, простой файл app.js как:

var express = require('express');

Когда я запускаю его:

tlab065:~/proj/Express-server-abstraction> node app.js 
node.js:116
        throw e; // process.nextTick error, or 'error' event on first tick
        ^
TypeError: Cannot read property 'prototype' of undefined
    at Object.<anonymous> (/people/home/jdomingues/local/node/lib/node/.npm/express/1.0.7/package/lib/express/server.js:87:44)    
    at Module._compile (module.js:373:26)
    at Object..js (module.js:379:10)
    at Module.load (module.js:305:31)
    at Function._load (module.js:271:10)
    at require (module.js:317:19)
    at Object.<anonymous> (/people/home/jdomingues/local/node/lib/node/.npm/express/1.0.7/package/lib/express/index.js:28:31)
    at Module._compile (module.js:373:26)
    at Object..js (module.js:379:10)
    at Module.load (module.js:305:31

Может кто-нибудь мне помочь? Почему я получаю эту ошибку? Как я могу установить другую версию из экспресс?

Ответы [ 5 ]

16 голосов
/ 02 марта 2011

Проблема в том, что у вас, вероятно, самое последнее соединение (в отличие от «вам нужно установить самое последнее соединение»), показанная командой @Shripad полезна и, вероятно, покажет вам, что у вас есть соединение 1.0, уу ... э-э, экспресс не совсем готов к подключению 1.0, вернитесь к 0.5.10:

npm install connect@0.5.10
3 голосов
/ 12 ноября 2011

комментирование кода, который включает в себя соединение, помогло в моем случае.

//connect = require('connect');

3 голосов
/ 02 марта 2011

Вам необходимо установить последнюю версию connect (connect@0.5.10). Убедитесь, что вы проверили версию подключения, которая установлена ​​и активна:

npm ls connect | grep active

Строка, которая выдает ссылку на ошибку connect.Server.

2 голосов
/ 09 марта 2011

try jpstrikesback ответьте и убедитесь, что вы установили зависимости в правильном порядке:

npm install connect@0.5.10
npm install express@1.0.7

, потому что npm install express установит последнюю версию подключения(если никого нет в наличии, и он сломается) и в express / 1.0.7 / package / lib / express / server.js

connect = require('connect')

, для которого, по-видимому, требуется последняя версия connect, а неВы потребовали в своем приложении.

0 голосов
/ 03 марта 2011

Для других (если ваш connect@1.0.1 не удаляется с помощью npm uninstall connect@1.0.1), я удалил фактические файлы, найденные в / usr / local / lib / node / connect /

Надеюсь, это поможет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...