我有一个包含以下代码的配置文件:
const email = {
persistentUserModel: Users,
expirationTime: 600, // 10 minutes
verificationURL: 'http://localhost:8000/email-verification/${URL}',
transportOptions: {
service: 'Gmail',
auth: {
user: 'my@email.com',
pass: 'myPassword'
}
},
hashingFunction: myHasher,
passwordFieldName: 'pw'
}
var configuration = Object.assign({
host: process.env.HOST || 'localhost',
port: process.env.PORT || 3000,
databaseUrl: process.env.MONGO_URL || 'mongodb://localhost/cervezas',
uploadsDir: path.join( __dirname, 'static', 'uploads' ),
auth,
email
}, environment)
module.exports = configuration
Eslint给我一些错误: - 未定义用户 - myHasher未定义
在另一个文件中我加载此配置文件,我需要模型和函数:
var myHaser= require('myHasher');
var Users = require('../models/Users')
....
nev.configure(configuration.email);
我不想在配置文件中要求模型和功能,因为它只是配置文件。
这样做的正确方法是什么?
答案 0 :(得分:0)
这是我的示例代码,用于实现您的要求:
var serverConfig = {};
serverConfig.MySqlConfig = {
MysqlUsername: "root",
MySqlPassword: "",
MySqlHost: "127.0.0.1",
MySqlDbName: "Geomat"
};
serverConfig.ServerPort = {
Administrator: 1234,
Geomat: 8888,
Bank: 1366
};
serverConfig.default =
{
Debug: true
};
exports.serverConfig = serverConfig;
并在主程序中要求如下:
var serverConfig = require('./serverConfig').serverConfig;
和用法:
this.io = require('socket.io').listen(serverConfig.ServerPort.Geomat);
关于您的代码的一些注意事项:
persistentUserModel:Users,