我在运行程序期间收到错误“类型‘未定义’不可分配给类型‘CartItem’”,我无法解决该错误:(。
import { Injectable } from '@angular/core';
import { CartItem } from '../common/cart-item';
import { Subject } from 'rxjs';
@Injectable({
providedIn: 'root',
})
export class CartService {
cartItems: CartItem[] = [];
totalPrice: Subject<number> = new Subject<number>();
totalQuantity: Subject<number> = new Subject<number>();
constructor() {}
addToCart(theCartItem: CartItem) {
// check if we already have the item in our cart
let alreadyExistsInCart: boolean = false;
let existingCartItem: CartItem = undefined;
---This is Product class---
export class Product {
constructor(
public id: string,
public sku: string,
public name: string,
public description: string,
public unitPrice: number,
public imageUrl: string,
public active: boolean,
public unitsInStock: number,
public dateCreated: Date,
public lastUpdate: Date
) {}
}
---This is CartItem class---
export class CartItem {
id: string;
name: string;
imageUrl: string;
unitPrice: number;
quantity: number;
constructor(product: Product) {
this.id = product.id,
this.name = product.name,
this.imageUrl = product.imageUrl,
this.unitPrice = product.unitPrice ,
this.quantity = 1
}
}
类型“未定义”不可分配给类型“CartItem”我收到错误如何解决此错误
如果只是错误
let existingCartItem: CartItem | undefined;
这会将
existingCartItem
初始化为 undefined
。