在没有铁路由器的情况下触发全球流星订阅

Trigger global meteor subscription without iron router

这应该很简单。

这是我想要的:

第 1 页: 订阅 'List' collection

第 2 页显示来自 'List' collection 的项目(用户然后从列表中选择一个项目, 返回 _id)

第 3 页使用_id订阅'Data'collection ]<- 从现在开始在每一页上保持订阅,无需使用 IRON ROUTER

我已经弄乱了 Template.subscribeTemplate.onCreated 等,但今天是星期五,我确定这是基本的东西,所以我想问一下。

干杯!

我是这样做的:

  1. 用户登录 -> 渲染 userLayout -> 设置 currentPageloading
  2. 如果用户已经select编辑了一个项目,将currentPage设置为userSplash(否则将currentPage设置为userProjects他们将select一个项目,然后去userSplash)

Template.userLayout.created = function() {
  Session.set('currentPage', 'loading');
  return Meteor.subscribe('projects', user.profile.company_id, function() {
    if (currentProject_id !== void 0) {
      return Session.set('currentPage', 'userSplash');
    } else {
      return Session.set('currentPage', 'userProjects');
    }
  });
};


  1. 呈现 userSplash -> 订阅所需的项目数据 -> 完成后加载仪表板

Template.userSplash.rendered = function() {
  return Meteor.subscribe('tasks', currentProject_id, function() {
    return Session.set('currentPage', 'userDashboard');
  });
};

( 回答提供了一些有用的信息)