在没有铁路由器的情况下触发全球流星订阅
Trigger global meteor subscription without iron router
这应该很简单。
这是我想要的:
第 1 页: 订阅 'List' collection
第 2 页:显示来自 'List' collection 的项目(用户然后从列表中选择一个项目, 返回 _id
)
第 3 页:使用_id
订阅'Data'collection ]<- 从现在开始在每一页上保持订阅,无需使用 IRON ROUTER
我已经弄乱了 Template.subscribe
、Template.onCreated
等,但今天是星期五,我确定这是基本的东西,所以我想问一下。
干杯!
我是这样做的:
- 用户登录 -> 渲染
userLayout
-> 设置 currentPage
为
loading
- 如果用户已经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');
}
});
};
- 呈现 userSplash -> 订阅所需的项目数据 -> 完成后加载仪表板
Template.userSplash.rendered = function() {
return Meteor.subscribe('tasks', currentProject_id, function() {
return Session.set('currentPage', 'userDashboard');
});
};
( 回答提供了一些有用的信息)
这应该很简单。
这是我想要的:
第 1 页: 订阅 'List' collection
第 2 页:显示来自 'List' collection 的项目(用户然后从列表中选择一个项目, 返回 _id
)
第 3 页:使用_id
订阅'Data'collection ]<- 从现在开始在每一页上保持订阅,无需使用 IRON ROUTER
我已经弄乱了 Template.subscribe
、Template.onCreated
等,但今天是星期五,我确定这是基本的东西,所以我想问一下。
干杯!
我是这样做的:
- 用户登录 -> 渲染
userLayout
-> 设置currentPage
为loading
- 如果用户已经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');
}
});
};
- 呈现 userSplash -> 订阅所需的项目数据 -> 完成后加载仪表板
Template.userSplash.rendered = function() {
return Meteor.subscribe('tasks', currentProject_id, function() {
return Session.set('currentPage', 'userDashboard');
});
};
(