0

我的用例是异步读取 RSS 提要项并将它们加载到流星集合中。

我有进行解析的 feedparser npm 模块。它发出三个事件 .on('error')、.on('meta') 和 .on('readable) 并具有三个不同的输出。

当我在fixtures.js 中运行它时,只使用console.log 语句来运行输出,它工作正常。当我使用相同的代码插入集合时,我得到与函数异步性相关的错误(假设与纤维有关)

所以,我想把它变成一种使用期货的流星方法,如下所示 - http://www.discovermeteor.com/patterns/5828399

我尝试过,但无法在 Futures 中处理多个事件。

4

2 回答 2

1

如果您只想在某一时刻将某些内容推送到 db,则同步此调用就足够了。除此之外,您可以异步执行任何操作。例如:

var Fiber = Npm.require('fibers');
var item = {};

var onInit = function() {
    // do whatever with item
};

var onData = function() {
    // do whatever with item
};

var onFinish = function() {
    new Fiber(function(){
        Documents.insert(item);
    }).run();
};
于 2013-08-29T20:23:49.260 回答
-2

尽管 Meteor 是一个很棒的工具,但我认为 node 和它的异步洞察力非常棒,并且是你正在做的最好的工具。保持计划 b 让您的项目的这一部分成为一个直接节点应用程序。

否则, 从流星异步

于 2013-08-29T19:55:58.173 回答