gpt4 book ai didi

javascript - vue findIndex 不是函数

转载 作者:行者123 更新时间:2023-11-30 20:22:50 24 4
gpt4 key购买 nike

这里我在 findIndex() 函数中遇到错误

未捕获( promise )TypeError:state.carts.findIndex 不是函数

cartId 有 r​​owId 和 qty 以及 sizeVal 和图像

方法

    updateCart() {
this.$store.dispatch('updateCart', this.cartId)
}

状态

state: {
carts: [],
},

Vue 检查购物车

031e0275ef3746070e80d81199bd2580:Object {
id:1
name:"T-Shirt"
options:Object {
image:"products\July2018\4TXSMgf6eAdrOlaxAMiX.jpg"
}
size:"l"
price:551
qty:2
rowId:"031e0275ef3746070e80d81199bd2580"
subtotal:1102
tax:115.71
}

突变

    updateCart(state, rowId) {
const index = state.carts.findIndex(cart => {cart.rowId == rowId});
// console.log(index)
state.carts.splice(index, 1, {
'qty': cart.qty,
'size': cart.sizeVal,
})
},

我的行动就是工作

Action

    updateCart(context, cart) {
return new Promise((resolve, reject) => {
axios.patch(`update/cart/${cart.id}` , {
id: cart.rowId,
qty: cart.qty,
size: cart.sizeVal,
image: cart.image
})
.then(response => {
context.commit('updateCart', response.data)
resolve(response)
})
.catch(error => {
reject(error)
})
})

},

现在我需要在 state.carts 中更新购物车的错误需要帮助请伙计们解释一下为什么它会给我错误

谢谢

最佳答案

您的 state.carts 是一个对象,而不是数组。findIndex 是一个 array method

The findIndex() method returns the index of the first element in the array that satisfies the provided testing function. Otherwise -1 is returned.

关于javascript - vue findIndex 不是函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51277081/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com