получение и отображение размера товара в корзине - PullRequest
0 голосов
/ 18 апреля 2020

Я чувствую, что моя логика 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>
    <% }); %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...