Appearance
useAddToCart ​
Usage ​
Provided product
object in the argument should be in a Ref<Product>
type.
vue
<script setup lang="ts">
const { isInCart, quantity, addToCart, getStock } = useAddToCart({ product });
</script>
Definition ​
Composable to manage adding product to cart
Basic usage ​
ts
const {
quantity,
getStock,
getAvailableStock,
isInCart,
count,
addToCart
} = useAddToCart(product);
Signature ​
ts
export function useAddToCart(
product: Ref<Schemas["Product"]>,
): UseAddToCartReturn
Parameters ​
Name | Type | Description |
---|---|---|
product | Ref<> |
Return type ​
See UseAddToCartReturn
ts
export type UseAddToCartReturn = {
/**
* Add to cart method
* @type {function}
*/
addToCart(): Promise<Schemas["Cart"]>;
/**
* If you want to add more that 1 product set quantity before invoking `addToCart`
*/
quantity: Ref<number>;
/**
* Returns product count in stock
*/
getStock: ComputedRef<number | undefined>;
/**
* Returns product count in available stock
*/
getAvailableStock: ComputedRef<number | undefined>;
/**
* Flag if product is already in cart
*/
isInCart: ComputedRef<boolean>;
/**
* count of the product quantity already in the cart
*/
count: ComputedRef<number>;
};
Properties ​
Name | Type | Description |
---|---|---|
quantity | Ref<number> | If you want to add more that 1 product set quantity before invoking `addToCart` |
getStock | ComputedRef<number | undefined> | Returns product count in stock |
getAvailableStock | ComputedRef<number | undefined> | Returns product count in available stock |
isInCart | ComputedRef<boolean> | Flag if product is already in cart |
count | ComputedRef<number> | count of the product quantity already in the cart |
Methods ​
Name | Type | Description |
---|---|---|
addToCart | Promise<> | Add to cart method |