我已经添加了'meteor-react'包,并且要通过显微镜教程。一路走来,我只是用React替换了Blaze模板步骤,但我不确定如何正确执行,以便Collections可以与Reactjs框架进行反应。正确使用Meteorjs与Reactjs?
“职位”是一个mongo集合。 以我main.js:
// Startup application
Meteor.startup(function() {
var target = document.getElementsByTagName('body')[0];
var data = Posts.find().fetch(); // RACE CONDITION occurs here.
React.renderComponent(new StreamAtom({ "data": data}), target);
});
在StreamAtom.jsx反应组分,“数据”被简单地设定为初始状态。
问题:
有一个与Posts.find()的竞争条件取(),所以大部分时间的页面不呈现。 Meteor没有回调,Blaze负责“Posts.find()”而没有回调,所以我错过了什么?
另外,如何在没有获取的情况下只使用Posts.find()?由于fetch()返回的是一个结果数组而不是Mongo游标,所以恐怕React实际上不会对集合的更改产生反应。
非常感谢提前,
我希望这将有助于我了解流星更好。
非常感谢:
上跟踪的综合指南!有效。我很惊讶该教程没有提到它。 Blaze是否在内部运行? – kaid 2014-11-01 06:36:38
Blaze在助手和数据上下文上无缝运行Autoruns,然后以最低限度的方式修补DOM而不进行显式渲染。 – imslavko 2014-11-01 06:43:43
如何将JSX转换作为Meteor构建系统的一部分自动工作? – 2015-03-30 20:43:07