Appearance
useCartItem ​
Definition ​
Composable to manage specific cart item
Basic usage ​
ts
const { 
 itemRegularPrice,
 itemSpecialPrice,
 itemTotalPrice,
 itemImageThumbnailUrl,
 itemOptions,
 itemType,
 isProduct,
 isPromotion,
 isRemovable,
 isStackable,
 isDigital,
 itemStock,
 itemQuantity,
 changeItemQuantity,
 removeItem,
 getProductItemSeoUrlData 
} = useCartItem(cartItem);
Signature ​
ts
export function useCartItem(
  cartItem: Ref<Schemas["LineItem"]>,
): UseCartItemReturn 
Parameters ​
| Name | Type | Description | 
|---|---|---|
| cartItem | Ref<>  | 
Return type ​
See UseCartItemReturn
ts
export type UseCartItemReturn = {
  /**
   * Calculated price {number} for the current item
   */
  itemRegularPrice: ComputedRef<number | undefined>;
  /**
   * Calculated price {number} for the current item if list price is set
   */
  itemSpecialPrice: ComputedRef<number | undefined>;
  /**
   * Total price for the current item of given quantity in the cart
   */
  itemTotalPrice: ComputedRef<number | undefined>;
  /**
   * Thumbnail url for the current item's entity
   */
  itemImageThumbnailUrl: ComputedRef<string>;
  /**
   * Options (of variation) for the current item
   */
  itemOptions: ComputedRef<Schemas["LineItem"]["payload"]["options"]>;
  /**
   * Type of the current item: "product" or "promotion"
   */
  itemType: ComputedRef<Schemas["LineItem"]["type"] | undefined>;
  /**
   * Determines if the current item is a product
   */
  isProduct: ComputedRef<boolean>;
  /**
   * Determines if the current item is a promotion
   */
  isPromotion: ComputedRef<boolean>;
  /**
   * Determines if the current item can be removed from cart
   */
  isRemovable: ComputedRef<boolean>;
  /**
   * Determines if the current item's quantity can be changed
   */
  isStackable: ComputedRef<boolean>;
  /**
   * Determines if the current item is a digital product (to download)
   */
  isDigital: ComputedRef<boolean>;
  /**
   * Stock information for the current item
   */
  itemStock: ComputedRef<number | undefined>;
  /**
   * Quantity of the current item in the cart
   */
  itemQuantity: ComputedRef<number | undefined>;
  /**
   * Changes the current item quantity in the cart
   */
  changeItemQuantity(quantity: number): Promise<Schemas["Cart"]>;
  /**
   * Removes the current item from the cart
   */
  removeItem(): Promise<void>;
  /**
   * Get SEO data for the current item
   *
   * @deprecated
   */
  getProductItemSeoUrlData(): Promise<
    Schemas["ProductDetailResponse"]["product"] | undefined
  >;
};
Properties ​
| Name | Type | Description | 
|---|---|---|
| itemRegularPrice | ComputedRef<number | undefined>  | Calculated price {number} for the current item | 
| itemSpecialPrice | ComputedRef<number | undefined>  | Calculated price {number} for the current item if list price is set | 
| itemTotalPrice | ComputedRef<number | undefined>  | Total price for the current item of given quantity in the cart | 
| itemImageThumbnailUrl | ComputedRef<string>  | Thumbnail url for the current item's entity | 
| itemOptions | ComputedRef<>  | Options (of variation) for the current item | 
| itemType | ComputedRef< | undefined>  | Type of the current item: "product" or "promotion" | 
| isProduct | ComputedRef<boolean>  | Determines if the current item is a product | 
| isPromotion | ComputedRef<boolean>  | Determines if the current item is a promotion | 
| isRemovable | ComputedRef<boolean>  | Determines if the current item can be removed from cart | 
| isStackable | ComputedRef<boolean>  | Determines if the current item's quantity can be changed | 
| isDigital | ComputedRef<boolean>  | Determines if the current item is a digital product (to download) | 
| itemStock | ComputedRef<number | undefined>  | Stock information for the current item | 
| itemQuantity | ComputedRef<number | undefined>  | Quantity of the current item in the cart | 
Methods ​
| Name | Type | Description | 
|---|---|---|
| changeItemQuantity | Promise<>  | Changes the current item quantity in the cart | 
| removeItem | Promise<void>  | Removes the current item from the cart | 
| getProductItemSeoUrlData | Promise< | undefined>  | Get SEO data for the current item | 
Usage ​
Display and manage single cart item in your cart.
ts
const { cartItem } = toRefs(props);
const {
  itemOptions,
  removeItem,
  itemRegularPrice,
  itemQuantity,
  isPromotion,
  itemStock,
  changeItemQuantity,
} = useCartItem(cartItem);