在子模块nodejs中设置父类的属性

我相信有可能是一个结构问题,可以解决这个问题,但我不确定如何保持一个调用模块内的方法的父类的设置值。 我试图尽可能简化我的代码。

我有一系列我在课堂上跟踪并在一段时间内运行的任务。 每个任务从远程数据库中获取数据,然后对其进行处理。 而在这个例子中,我只需要设置task.fetching。 还有一些其他的值我想能够从runner.js文件中更新。

我应该注意的是,如果可能的话,我对如何解决这个问题感兴趣,而不是专门找一些能够处理运行任务的模块。

// task.js const runner = require('./runner'); class Task { constructor(params) { this.details = params.details; this.fetching = false; this.interval = null; } start() { this.interval = setInterval(() => { if (!this.fetching) { runner.run(this.details); } }, this.details.frequency * 1000); } } module.exports = Task; // runner.js const run = (task) => { fetch(task.url) .then(parseData) .then(data => { if (task.format === 'type') { return formatItems(data.items); } return {}; }) .then(items => { if (Object.keys(items).length > 0) { console.log(`Found ${Object.keys(items.newItems).length} new items and ${Object.keys(items.updatedItems).length} updated items`); } // *** NEED TO SET TASK FETCHING TO FALSE HERE }) .catch(e => { console.log('ERROR:', e); }); }; 

task.fetching = false …不知道我得到的问题。