2012-10-11 80 views
11

正在使用護照的Node.js找不到模塊 '護照本地' 錯誤

我app.js

在passport.js

var passport = require('passport') 

require('./config/passport').boot(passport, config) 

var LocalStrategy = require('passport-local').Strategy 

運行應用程序和我收到此錯誤消息

module.js:340 
    throw err; 

error:Cannot find module 'passport-local' 
     at Object.<anonymous> <F:\work\config\passport.js:2:21> 

我安裝F:\ work \ node_modules中的護照。

即使我把

var LocalStrategy = require('passport-local').Strategy 

權下

var passport = require('passport') 

我仍然得到同樣的錯誤

任何想法,爲什麼?

回答

25

您是否安裝了護照本地模塊?

npm install passport-local

+9

該死!我以爲護照本地是護照的一部分thanx – paynestrike

+1

老實說,這就像護照的錯誤。他們的文件應該提到你需要包括本地護照。 –

+1

我認爲你單獨要求它的想法應該表明它是一個單獨的模塊。儘管如此,我來這裏仔細檢查。 –

0

我有同樣的問題,我解決了它:

檢查package.json文件。 如果它不存在,您需要在您編寫主JS文件的相同文件夾(server.jsindex.js或您想要的)中初始化項目。

$ sudo npm init 

和安裝NPM模塊時,remeber將它們保存在包文件:

$ sudo npm install passport-local --save 

我以這種方式解決。