Я получил этот код:переменный вопрос сферы в nodejs
var log = (function() {
'use strict';
var fs = require('fs'), baseName='', path = require('path');
fs.readFile('./config.json', {encoding : 'utf-8'}, function (err, data) {
if (!err) {
var parsedConfig = JSON.parse(data);
logPath = parsedConfig.logFile;
baseName = path.basename(logPath, '.log');
if (logPath.length==0)
logPath = './alteredFile.log';
} else {
throw err;
}
});
}());
var module;
module.exports = log;
Я пытаюсь установить переменную baseName
но вне стороны fs.readFile
обратного вызова он не установлен и по-прежнему пуст! как я могу решить это?
Также обратите внимание, что IIFE [обычно не нужны с областью модуля Node.js] (http://stackoverflow.com/questions/21531329/are-node-js-modules-need-to-be-wrapped- внутри-модуль-шаблон) –