У меня есть набор данных, состоящих из людей с прикрепленными таблицами. Таблицы могут иметь любое количество строк. Для каждой строки я хотел бы распечатать информацию о персоне и таблице. В первом скрипте я повторяю счет строки перед написанием каждой строки таблицы. Выполняя это так, количество строк всегда правильно для каждой строки таблицы.Ошибки подсчета ошибок в Nodejs
async.each(data.table, function(array, printCallback) {
rowCount++;
fs.appendFile(fileName, data.firstName + ' ' + data.lastName + ',' + data.email + ',' + data.bd + ',' + key + ',' + array[0] + ',' + array[1] + ',' + array[2].slice(0, array[2].indexOf(' ')) + '\n', function(err){
if (err) { console.log(err); }
printCallback();
});
});
Если переместить ROWCOUNT в обратный вызов для метода appendFile(), то сверка только обновление с каждым человеком, а не каждая строкой таблицы каждого человека. Итак, если у первого человека три строки, rowCount будет одинаковым на каждом из них.
async.each(data.table, function(array, printCallback) {
fs.appendFile(fileName, data.firstName + ' ' + data.lastName + ',' + data.email + ',' + data.bd + ',' + key + ',' + array[0] + ',' + array[1] + ',' + array[2].slice(0, array[2].indexOf(' ')) + '\n', function(err){
if (err) { console.log(err); }
rowCount++;
printCallback();
});
});
Не следует ли блокировать fs.appendFile? И async.each ограничивается одной строкой за раз, поэтому rowCount должен итерации после каждой строки в любом случае, бит ее не работает таким образом. Что мне здесь не хватает?
Большое спасибо. Это очень многое для меня. – Elliot