属性"id"在类型"从不"上不存在。角



嗨,我正在一个小商店网站项目上练习这个项目,但我在将商品移动到购物车时遇到了问题。

在文件app/components/product-list.component.ts的源代码第33行:

const cartIdx = cartProducts.findIndex(cart => cart.id === cartProduct.id)

当我执行同一行时,我会遇到错误:类型"never"上不存在属性"id">

这是我的代码:

onSubmit(cartItem: Product){
let toCartItem: CartItems[] = [];
let alertMessage: string = '';
const itemCount = this.selectedOption;
const cartItems: CartItems[] | [] = this.ProductserveService.getCartItems();

const itemID = cartItems.findIndex(cart => cart.id === cartItem.id)
toCartItem = cartItems;
if((itemID === -1) || (cartItems.length === 0)){
toCartItem.push(Object.assign(cartItem, {option: itemCount}));
alertMessage = `New Item '${cartItem.name}' added to cart`;
}
this.ProductserveService.addToCart(toCartItem);
alert(alertMessage);
this.printLocalData();
return false;}

有人知道为什么吗?

我已经阅读了您的代码,您在findIndex中遗漏了cart的数据类型,将其从const cartIdx = cartProducts.findIndex(cart => cart.id === cartProduct.id)改为const cartIdx = cartProducts.findIndex(cart: CartProduct => cart.id === cartProduct.id)

相关内容

最新更新