Meteor 1.4 - 反应数据加载技术的最佳实践

时间:2016-10-10 17:05:28

标签: reactjs meteor

我正在使用Meteor 1.4 / React构建一个中型应用程序。所以我试图在构建我的应用程序时找到Meteor 1.4 / React之间数据处理的“最佳实践”。

目前我使用createContainer处理Meteor和React组件之间的数据,如下例所示。

话虽如此,我已经阅读了许多关于使用React Komposer,TrackerReact和React Document容器等Meteor包/功能的文章/论坛帖子。

所以我不确定哪一个最适合中等规模的项目,随着时间的推移会增加。所以我想知道是否有人通过了类似的经历/试过这些包可以与我分享他们的经验吗?

提前感谢您的帮助和时间

  import React, { Component } from 'react';
  import { createContainer } from 'meteor/react-meteor-data';

  export default class DDOrganization extends Component {

      getOrganizations(){
        let org = this.props.org;
        return Organizations.find({'name': {'$regex': org}});
      }

      renderOrganizations(){
        return this.getOrganizations().bind(this).map((org) => {
          return (
            <li key={org._id}><a href="#" data-id={org._id} onClick={this.props.setOrgState}>{org.name}</a></li>
          )
        });
      }

      render(){
          let {organizations} = this.props;
          return (
              <ul className="select-organization-list">
                  {this.renderOrganizations().bind(this)}
              </ul>
          )
      }

  };


  export default createContainer(() => {

      let organizations = {};
      let {org} = this.props;
      let orgSub = Meteor.subscribe("OrgSubscription", org);

      if(orgSub.ready()){
          organizations = Organizations.find({'name': {'$regex': org}}).fetch();
      }

      return {
          organizations: organizations
      }

  }, DDOrganization);

1 个答案:

答案 0 :(得分:2)

我正在做的事情与你目前正在为生产中的一个相当大的项目做的事情一样,它似乎工作得很好。我相信这是MDG推荐的方法。