From c42741c016f6f226d6010d7119fa1180ea3d44bf Mon Sep 17 00:00:00 2001
From: MinseoLee <mmmm@ajou.ac.kr>
Date: Sat, 9 Dec 2023 14:26:46 +0900
Subject: [PATCH] fix: cartItems clonedeep

---
 src/_app/modules/wrapper/Wrapper.tsx             | 1 -
 src/contexts/cart/index.tsx                      | 5 +++--
 src/pages/menu-page/modules/menu-box/MenuBox.tsx | 4 ++--
 3 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/_app/modules/wrapper/Wrapper.tsx b/src/_app/modules/wrapper/Wrapper.tsx
index 6f29d55..85e732a 100644
--- a/src/_app/modules/wrapper/Wrapper.tsx
+++ b/src/_app/modules/wrapper/Wrapper.tsx
@@ -10,7 +10,6 @@ import S from './Wrapper.module.css';
 
 import type { GFCWithProp } from "../../../common/types/fc";
 import type { OrderedItemModel } from "../../../pages/admin-page/config/type";
-import type { CartItemPostModel } from "../../../pages/cart-page/config/type";
 import type { MenuPageModel } from "../../../pages/menu-page/config/type";
 import type { ReactNode , MutableRefObject } from "react";
 
diff --git a/src/contexts/cart/index.tsx b/src/contexts/cart/index.tsx
index bcb80dc..7ae8a04 100644
--- a/src/contexts/cart/index.tsx
+++ b/src/contexts/cart/index.tsx
@@ -1,5 +1,6 @@
 import { createContext, useEffect, useState } from "react";
 
+import { cloneDeep } from "../../common/utils/jjLodash";
 import logger from "../../common/utils/logger";
 
 import type { CartItemData } from "../../pages/cart-page/config/type";
@@ -42,11 +43,11 @@ const CartProvider: FC<Props> = ({ children }) => {
     
     const addCartItem = (cartItem: CartItemData) => {
         setItem((prevItem) => {
-            if (cartItem.shop !== prevItem?.shop) {
+            if (cartItem.shop._id !== prevItem?.shop._id) {
                 return cartItem;
             }
             else {
-                const _prev = { ...prevItem };
+                const _prev = cloneDeep(prevItem);
                 _prev?.menus?.push(...cartItem.menus);
                 return _prev;
             }
diff --git a/src/pages/menu-page/modules/menu-box/MenuBox.tsx b/src/pages/menu-page/modules/menu-box/MenuBox.tsx
index 83f94a4..6afec3a 100644
--- a/src/pages/menu-page/modules/menu-box/MenuBox.tsx
+++ b/src/pages/menu-page/modules/menu-box/MenuBox.tsx
@@ -69,8 +69,8 @@ const MenuBSEl: FC<MenuBSElProps> = ({ _id, name, price, image, shop }) => {
     
     const handleClickPutIn = () => {
         if (!cartItem) caseCartIsEmpty();
-        if (cartItem?.shop && (cartItem?.shop !== shop)) caseCartIsNotSameShop();
-        if (cartItem?.shop && (cartItem?.shop === shop)) caseCartIsSameShop();
+        if (cartItem?.shop && (cartItem?.shop._id !== shop._id)) caseCartIsNotSameShop();
+        if (cartItem?.shop && (cartItem?.shop._id === shop._id)) caseCartIsSameShop();
         
         // TODO:: Needs TOAST
         flushBSElement();
-- 
GitLab