I have file this piece of code:
var result = '';
files.forEach(function (file) {
fs.readFile(generateTemplatePath(fileType), 'utf-8', function (err, data) {
if (err) {
return console.log(err);
}
var fileString = fs.readFileSync(baseDir + fileType + '/' + file).toString();
var content = escapeCharacters(fileString);
result += data.replace('{{data}}', content);
console.log(result);
});
console.log(result);
});
Problem is, first console.log
prints consecutive values, but second one prints empty string. How to pass result outside of forEach
for example as function's return
value?