Skip to content

Commit 28e861e

Browse files
committed
refactor: 영수증 정보 수정 navbar 수정
1 parent 776f8ae commit 28e861e

File tree

5 files changed

+63
-66
lines changed

5 files changed

+63
-66
lines changed

src/components/common/Navbar/Navbar.tsx

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,12 @@ import classNames from "classnames";
44

55
import styles from "@/components/common/Navbar/Navbar.module.scss";
66

7-
const Navbar = ({ children }: PropsWithChildren) => {
8-
return <div className={styles.Navbar}>{children}</div>;
7+
interface NavbarProps extends PropsWithChildren {
8+
className?: string;
9+
}
10+
11+
const Navbar = ({ children, className }: NavbarProps) => {
12+
return <div className={(classNames(styles.Navbar), className)}>{children}</div>;
913
};
1014

1115
Navbar.LeftButton = ({

src/pages/ReceiptEditPage.tsx

Lines changed: 0 additions & 32 deletions
This file was deleted.

src/components/ReceiptEdit/ReceiptEdit.module.scss renamed to src/pages/ReceiptEditPage/ReceiptEditPage.module.scss

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -31,6 +31,15 @@
3131
}
3232
}
3333

34+
.Navbar {
35+
padding-left: 0;
36+
padding-right: 0;
37+
}
38+
39+
.Container {
40+
z-index: 1;
41+
}
42+
3443
.Top {
3544
z-index: 1;
3645

src/components/ReceiptEdit/ReceiptEdit.tsx renamed to src/pages/ReceiptEditPage/ReceiptEditPage.tsx

Lines changed: 47 additions & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,19 @@
11
import { useEffect, useState } from "react";
22

3-
import styles from "@/components/ReceiptEdit/ReceiptEdit.module.scss";
3+
import Navbar from "@/components/common/Navbar/Navbar";
44
import Button from "@/components/ui/Button/Button";
5+
import Icon from "@/components/ui/Icon/Icon";
56
import Input from "@/components/ui/Input/Input";
67
import Text from "@/components/ui/Text/Text";
78

89
import { useRoute } from "@/hooks/common/useRoute";
910

11+
import styles from "@/pages/ReceiptEditPage/ReceiptEditPage.module.scss";
12+
1013
import { useCreateReviewStore } from "@/store/useReviewStore";
1114
import { useScanDataStore } from "@/store/useScanDataStore";
1215

13-
const ReceiptEdit = () => {
16+
const ReceiptEditPage = () => {
1417
const { navigateToHome, navigateToSelectTag } = useRoute();
1518

1619
const { scanData, resetScanData } = useScanDataStore();
@@ -74,37 +77,50 @@ const ReceiptEdit = () => {
7477
navigateToHome();
7578
};
7679

80+
const handleNavigateToHome = () => {
81+
resetScanData();
82+
navigateToHome();
83+
};
84+
7785
return (
7886
<div className={styles.ReceiptEdit}>
79-
<div className={styles.Top}>
80-
<div className={styles.TitleBox}>
81-
<Text variant="titleM" color="primary" as="h1" truncated>
82-
{formData.length > 0 && Object.keys(formData[0]).length > 0 && formData[0].value}
83-
</Text>
84-
<Text variant="titleM" color="primary" as="h1">
85-
87+
<div className={styles.Container}>
88+
<Navbar className={styles.Navbar}>
89+
<Navbar.LeftButton onClick={handleNavigateToHome}>
90+
<Icon name="leftArrow" />
91+
</Navbar.LeftButton>
92+
</Navbar>
93+
94+
<div className={styles.Top}>
95+
<div className={styles.TitleBox}>
96+
<Text variant="titleM" color="primary" as="h1" truncated>
97+
{formData.length > 0 && Object.keys(formData[0]).length > 0 && formData[0].value}
98+
</Text>
99+
<Text variant="titleM" color="primary" as="h1">
100+
101+
</Text>
102+
</div>
103+
<Text variant="titleM" color="primary" as="h1" align="center">
104+
다녀오셨네요!
86105
</Text>
87-
</div>
88-
<Text variant="titleM" color="primary" as="h1" align="center">
89-
다녀오셨네요!
90-
</Text>
91-
92-
<div className={styles.InfoList}>
93-
{formData.map((data, index) => (
94-
<div key={index} className={styles.InfoItem}>
95-
<Text variant="bodyXsm" color="secondary">
96-
{data.key}
97-
</Text>
98-
<Input
99-
placeholder={`${data.key} 입력`}
100-
value={data.value}
101-
onFocus={() => handleFocus(index.toString())}
102-
onBlur={() => handleBlur(index.toString())}
103-
isFocus={focusState[index.toString()] || false}
104-
onChange={(e) => handleInputChange(index, e.target.value)}
105-
/>
106-
</div>
107-
))}
106+
107+
<div className={styles.InfoList}>
108+
{formData.map((data, index) => (
109+
<div key={index} className={styles.InfoItem}>
110+
<Text variant="bodyXsm" color="secondary">
111+
{data.key}
112+
</Text>
113+
<Input
114+
placeholder={`${data.key} 입력`}
115+
value={data.value}
116+
onFocus={() => handleFocus(index.toString())}
117+
onBlur={() => handleBlur(index.toString())}
118+
isFocus={focusState[index.toString()] || false}
119+
onChange={(e) => handleInputChange(index, e.target.value)}
120+
/>
121+
</div>
122+
))}
123+
</div>
108124
</div>
109125
</div>
110126

@@ -136,4 +152,4 @@ const ReceiptEdit = () => {
136152
);
137153
};
138154

139-
export default ReceiptEdit;
155+
export default ReceiptEditPage;

src/router/AppRouter.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ import { PATH } from "@/constants/path";
77
import CreateReviewFailPage from "@/pages/CreateReviewFailPage/CreateReviewFailPage";
88
import HomePage from "@/pages/HomePage";
99
import LoadingPage from "@/pages/LoadingPage/LoadingPage";
10-
import ReceiptEditPage from "@/pages/ReceiptEditPage";
10+
import ReceiptEditPage from "@/pages/ReceiptEditPage/ReceiptEditPage";
1111
import ReceiptInputPage from "@/pages/ReceiptInputPage/ReceiptInputPage";
1212
import RecognitionFailPage from "@/pages/RecognitionFailPage";
1313
import ReviewResultPage from "@/pages/ReviewResultPage/ReviewResultPage";

0 commit comments

Comments
 (0)