Сообщение от Audaxviator
|
Я извиняюсь, а что делает этот модуль? Теоретически можно предположить, что он записывает в файл пустую строку (попросту, создаёт файл price.txt). Но тогда он должен выглядеть как-то так:
const fs = require('fs');
var parse = function (){
fs.writeFileSync('./data/prices.txt', '', err => console.error(err));
};
module.exports = parse;
А лучше так:
var fs = require('fs');
module.exports = function() {
fs.writeFileSync('./data/prices.txt', '', err => console.error(err));
};
И вызываться так:
require('./parse')(); // тут должно быть имя файла с модулем - я не знаю, как он называется
И поскольку возвращать ему нечего (да хоть бы и было чего), то и в переменную - var a = - его передавать незачем - так его и засунуть в массив промиса.
|
Я модуль постарался максимально ужать, просто для примера. В аргументе "csrf" я передаю функцию, которая посреди выполнения кода забирает одну переменную и передаёт её в основной скрипт. С созданным файлом в последствии происходят действия, с некоторого ресурса пост запросами парсятся цены и т.д.
Просто 100 строк кода скидывать было бы не совсем разумным, на мой взгляд.
Вот как в приведённый мной пример можно интегрировать промисы?
Или, если можно, просто приведите холостой пример, в котором выполняется некоторый модуль(пусть это будет таймаут 3 секунды например), и после выполнения из модуля поступает информация в основной шаблон, что модуль выполнился. Причём чтобы сам промис и ".then" объявлялись в основном шаблоне. Возможно такое?
var a = require('./a');
var b = require('./b');
var c = require('./c');
Promise.all([a.run(), b.run(), c.run()]).then(function(arrayResults) {
//тут что-то делаем
});
Вот если можно в пример выше добавьте отдельно короткий код любого из модулей а b или c, который возвращает промис.