NodeJS需要模块不工作
我为我的项目设置passportjs。 我使用passportConfigvariables将护照configuration文件导入到app.js。 我想要passportConfig文件在app.js中运行。
// app.js file var mysql = require('mysql'), passport = require('passport'), passportConfig = require('./passportConfig.js'); // Database var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'test' });
>
在这里,我不明白为什么我需要再次需要MySQL和护照。 因为我已经在app.js. 当我删除需求时出现一个错误,告诉我包括他们。
// passport config file // Require var mysql = require('mysql'); var passport = require('passport'), // Database var connection = mysql.createConnection({ host: 'localhost', user: 'root', password: 'password', database: 'test' }); module.exports = function(passport) { // Passport Session - persistent login sessions passport.serializeUser(function(user, done) { done(null, user.id); }); passport.deserializeUser(function(id, done) { var query = 'SELECT * FROM `users` WHERE `id` = ?'; var inserts = [id]; query = mysql.format(query, inserts)...
这是否意味着passportConfig文件没有在app.js中运行,即使我需要在我的app.js中的文件? 这是我能想到的唯一原因
当你“需要”一个模块。 Node.js包装每个模块。 什么是包装:
包装:给文件的私人范围。 这就是我们需要的每个文件的本地
require
和module
对象。
资源
这就是为什么我认为你需要在这两个文件中包含passport
和mysql
。