The last function we need to perform with our cart items is manually updating the item quantity. As we've just done with removing cart items, we'll need a mutation and an action, and we'll have to perform some minor updates on the CartItem component to wire everything up.
In the ClientApp/store/mutations.js file, add the following new mutation:
export const setProductQuantity = (state, payload) => {
let cartItem = Object.assign({}, state.cart[payload.index]);
cartItem.quantity = payload.quantity;
state.cart.splice(payload.index, 1, cartItem);
};
This mutation is another fairly complicated one due to how the reactivity system in Vue works, but it is virtually identical to the updateProductQuantity mutation we saw earlier, so I won't explain it again this time around. I'm conscious that I've made the same statement about...