搜索

首页  >  问答  >  正文

Vuex的getters中的forEach方法返回单个值而非多个值

我有一个购物车,它是一个产品数组,我想要访问购物车中的每个名称。 我在getters中有一个forEach函数,但它只返回一个名称。我尝试了.map(),但它返回另一个数组,我需要多个字符串值。你能帮忙吗?

let cart = window.localStorage.getItem('cart')

const store = createStore({
    state: {
        
        cart: cart ? JSON.parse(cart) : [],
        

    },


 getters: {
   setTitle: state =>{
           let oneItem=''
            state.cart.forEach((item)=>{
                oneItem=item.ropeTitle
            })

            return oneItem
        },
}
}

P粉904191507P粉904191507233 天前459

全部回复(1)我来回复

  • P粉792026467

    P粉7920264672024-04-01 10:31:41

    这是因为您只返回了oneItem(让我猜猜,它也是state.cart数组中的最后一个项目吗?)

    您可以尝试使用.join()来将项目连接在一起。

    假设您想要使用, 来连接项目,您可以尝试

    setTitle: state => state.cart.map(item => item.ropeTitle).join(', ')
    

    回复
    0
  • 取消回复