gpt4 book ai didi

javascript - 如何使用购物车收藏

转载 作者:行者123 更新时间:2023-11-28 05:49:10 25 4
gpt4 key购买 nike

我正在尝试弄清楚如何使用 session 来跟踪用户并更新我的购物车集合:

app.post('/cart/:id',function (req, res)
{
if(!userKey)
{
userKey = req.session.id;
}

Cart.findOne({userKey : userKey},function (err, cart)
{
if(err)
{
console.log("Error finding cart "+err);
}
else if(!cart)
{
cart = new Cart();
cart.userKey = userKey;
cart.items = [];

cart.save(function (err)
{
if(err)
{
console.log("Error saving cart"+err);
}
Ticket.findOne({_id:req.params.id},function (err, ticket)
{
if(err)
{
console.log("Error finding ticket "+err);
}

cart.items.push({
type:ticket.type,
price:ticket.price,
quantity:req.body.quantity,
total:ticket.price * req.body.quantity,
time:ticket.time,
date:ticket.date
});

});
});

}
else if(cart)
{
Ticket.findOne({_id:req.params.id},function (err, ticket)
{
if (err)
{
console.log("Error finding ticket " + err);
}

cart.items.push({
type: ticket.type,
price: ticket.price,
quantity: req.body.quantity,
total: ticket.price * req.body.quantity,
time: ticket.time,
date: ticket.date
});

});
}
});
});

上面是我在route.js文件中的代码。我正在构建一个express和node应用程序。我有一个包含可以添加到购物车的项目的页面,并且我有一个购物车集合。该代码适用于当我将第一个商品添加到购物车时,它会检查是否有购物车,如果没有,它会创建一个新购物车,将 session ID 分配给 userkey 变量并插入新商品。问题是,当我向购物车添加额外的商品时,它不会更新购物车,而是会覆盖购物车中的现有数据。我不知道如何解决这个问题

最佳答案

插入商品后我必须保存购物车。所以我添加了

 cart.save();

在票据插入功能之后

关于javascript - 如何使用购物车收藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38230501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com