Я чувствую, что моя логика c близка, но я просто не совсем там. Я хочу взять информацию из выпадающего списка «размер», а затем добавить ее в свою корзину вместе с остальным продуктом. Любая помощь очень ценится!
вот мой .add () logi c, который добавляет товар в корзину. Все работает просто отлично, кроме размера logi c. (добавление размера).
this.items = oldCart.items || {};
this.totalQty = oldCart.totalQty || 0;
this.totalPrice = oldCart.totalPrice || 0;
this.add = function(item, id, size){
var storedItem = this.items[id];
if(!storedItem) {
storedItem = this.items[id] = {item: item, qty: 0, price: 0, size: size}
}
storedItem.size += storedItem.size;
storedItem.qty++;
storedItem.price = storedItem.item.price * storedItem.qty;
this.totalQty++;
this.totalPrice += storedItem.item.price;
}
Я точно знаю, что получаю правильную информацию о размере со страницы продукта в моей переменной размера, так как я проверял ее с console.log.
вот мой маршрут:
outer.get('/add-to-cart/:id', function(req, res, next){
var productId = req.params.id;
var cart = new Cart(req.session.cart ? req.session.cart : {});
var size = req.query.bikeSize <--------------------------------------------
Product.findById(productId, function(err, product){
if(err){
// !!!!add an error message!!!!
return res.redirect('/');
}
cart.add(product, product.id, size); <---------------------
req.session.cart = cart;
console.log(req.session.cart);
res.redirect('/');
});
});
вот мой дисплей товара и размера.
<% products.forEach(function(product){ %>
<li class="list-group-item " id="checkoutGroup">
<img src="<%= product.item.mainImage %>" alt="">
<span class="badge"><%= product.qty %> </span>
<span><%= product.item.name %></span>
<span><%= product.size %></span> <----------------------------
<span class="">- $<%= product.price.toLocaleString(); %>.00</span>
<div class="btn-group" id="checkoutRemoveButton">
<button class="btn btn-xs dropdown-toggle" data-toggle="dropdown" type="button">Remove</button>
<ul class="dropdown-menu" id="checkoutDropdown">
<li><a href="/reduce/<%= product.item._id %>">Reduce by 1</a></li>
<hr>
<li><a href="/reduce-all/<%= product.item._id %>">Remove All</a></li>
</ul>
</div>
</li>
<% }); %>