Learn Basic OOP by Building a Shopping Cart - Step 28

Tell us what’s happening:

Hello, I am getting an error telling me to “remove the undefined from my truth expression”. Is it a bug or am I not realising my mistake.

Your code so far

<!-- file: index.html -->

/* file: script.js */
// User Editable Region

  addItem(id, products) {
    const product = products.find((item) => item.id === id);
    const { name, price } = product;
    this.items.push(product);

    const totalCountPerProduct = {};
    this.items.forEach((dessert) => {
      totalCountPerProduct[dessert.id] = (totalCountPerProduct[dessert.id] || 0) + 1;
    })

    const currentProductCount = totalCountPerProduct[product.id];
    const currentProductCountSpan = document.getElementById(`product-count-for-id${id}`);

    currentProductCount > 1 
      ? currentProductCountSpan.textContent = `${currentProductCount}x`
      : undefined;
  }

// User Editable Region
/* file: styles.css */

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:134.0) Gecko/20100101 Firefox/134.0

Challenge Information:

Learn Basic OOP by Building a Shopping Cart - Step 28

Hi. Your code passed for me.

You may have to do a “hard refresh” of a page in your browser if you have an out of date, cached version of that website.

While on the problematic site use the key combination below to trigger a hard refresh depending on your operating system:

  • Windows: CTRL + F5
  • Mac/Apple: Apple + Shift + R or Command + Shift + R
  • Linux: F5

To learn more about this read: Refresh your cache - When hitting F5 just isn't enough!

If a hard refresh doesn’t work, try opening the problematic page in your browser’s private browsing mode.