Why Vue Code for Article

HTML

<div id="app">
  <ul>
    <li v-for="(product, index) in products">
      <input type="number" v-model.number="product.quantity"> 
      {{product.name}}
      <span v-if="product.quantity === 0">
          - OUT OF STOCK
      </span>
      <button @click="increment(product, index)">
        Add
      </button>
    </li>
  </ul>

  <h2>Total Inventory: {{ totalProducts }}</h2>
</div>

<script src="https://unpkg.com/vue"></script>
<script>
  const app = new Vue({
    el: '#app',
    data: {
      products: []
    },
    computed: {
      totalProducts () {
        return this.products.reduce((sum, product) => {
          return sum + product.quantity
        }, 0)
      }
    },
    created () {
      fetch('https://api.myjson.com/bins/74l63')
        .then(response => response.json())
        .then(json => { 
          this.products = json.products 
       })
    },
    methods : {
    	increment : (product, index) => {
        console.log(this.products)
				/* this.products[index] = product.quantity + 1 */;
        this.products += 1;
      }
    }
  })
</script>