【发布时间】:2014-06-25 00:52:36
【问题描述】:
我有一个订阅购物车出版物的全局 waitOn。
但是,我想在购物车页面上显示购物车中的商品列表,但购物车中有一个 line_items 对象数组,其中包含 listIds。
所以我还需要订阅购物车页面上的列表才能显示它们。
这是我目前所拥有的
Router.configure({
layoutTemplate: "layout",
loadingTemplate: "loading",
waitOn: function(){
if(Session.get("cartId"))
return Meteor.subscribe("cart", Session.get("cartId"));
}
});
购物车路线
this.route("cart", {
path: "/cart",
waitOn: function(){
if(Session.get("cartId")){
var line_items = Carts.findOne(Session.get("cartId")).line_items;
var ids = [];
for(var i = 0; i < line_items.length; i++){
ids.push(line_items[i].listingId);
}
return Meteor.subscribe("cartItems", ids);
}
}
});
我收到错误无法读取未定义的属性“line_items”。我认为这是因为它试图在购物车订阅之前订阅。
有什么办法解决这个问题?
【问题讨论】:
-
您可能会发现this post 很有帮助。
标签: javascript jquery mongodb meteor