0

我想将一件商品推送到我的购物车,但它不让我这样做,并且给了我标题中所述的这个错误。

这是我的代码:

import Vue from 'vue'
import Vuex from 'vuex'
 
Vue.use(Vuex)
 
export default new Vuex.Store({
    state: {
        products: [],
        cart: [],
    },
    actions: {
        products({ commit }) {
            axios.get("api/products/").then(response => {

                let products = response.data.products.map(product => {
                const totalRatings = product.product_rating.reduce((acc, { rating }) => acc += Number(rating), 0)
                const averageRating = totalRatings/product.product_rating.length
                return {...product, averageRating}
                })

                products = products.map(product => {
                const category = product.product_category.name
                return {...product, category}
                })
                commit('GET_PRODUCTS', products)
            })
        },
        cart({ commit }) {
            commit('GET_CART_ITEMS')
        },
        addToCart({ commit }, { product }) {
            console.log(product)
            commit('ADD_TO_CART', { product })
        }       
    },
    getters: {
        
    },
    mutations: {
        GET_PRODUCTS(state, products) {
            state.products = products
        },
        GET_CART_ITEMS(state, cart) {
            state.cart = cart
        },
        ADD_TO_CART(state, product) {
            state.cart.push(product)
        }
    },
})

我在这里做错了什么?Cart 是个对象吧,为什么说我不能推呢?

4

0 回答 0