搜尋

首頁  >  問答  >  主體

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粉904191507273 天前508

全部回覆(1)我來回復

  • P粉792026467

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

    這是因為您只回傳了oneItem(讓我猜猜,它也是state.cart陣列中的最後一個項目嗎?)

    您可以嘗試使用.join()來將項目連接在一起。

    假設您想要使用, 來連接項目,您可以嘗試

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

    回覆
    0
  • 取消回覆