Skip to content

Commit 082dd2f

Browse files
authored
Merge pull request #238 from APPS-sookmyung/dev
[MERGE] dev to main
2 parents fa7bf69 + 22514e0 commit 082dd2f

File tree

3 files changed

+30
-22
lines changed

3 files changed

+30
-22
lines changed

src/components/MyCard/MyCard.jsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ export default function MyCard({
2525
<S.ProfileText>
2626
<S.Name>{name}</S.Name>
2727
<S.Team>
28-
{`${company || ''}${company && (department || position) ? ' | ' : ''}${department || ''}${department && position ? ' | ' : ''}${position || ''}`}
28+
{`${company || ''}${company && (department || position) ? ' / ' : ''}${department || ''}${department && position ? ' / ' : ''}${position || ''}`}
2929
</S.Team>
3030
{phone && (
3131
<S.ExtraInfo>

src/pages/DetailEditPage/DetailEditPage.jsx

Lines changed: 26 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ const InputWrapper = memo(
4242
/>
4343
{!autoFocus && (
4444
<S.IconWrapper onClick={() => onFocus(name)}>
45-
<Icon id='pencil' fill='none' width={13} height={13}/>
45+
<Icon id='pencil' fill='none' width={13} height={13} />
4646
</S.IconWrapper>
4747
)}
4848
</S.InputBox>
@@ -186,6 +186,15 @@ export default function DetailEditPage() {
186186
}
187187
}
188188
}, [inputData, badges]);
189+
useEffect(() => {
190+
if (selectedImage.frontImg || selectedImage.backImg) {
191+
setInfo((prev) => ({
192+
...prev,
193+
frontImg: selectedImage.frontImg,
194+
backImg: selectedImage.backImg,
195+
}));
196+
}
197+
}, [selectedImage]);
189198

190199
const handleGroupChange = (updatedBadges) => {
191200
setBadges(updatedBadges);
@@ -219,20 +228,21 @@ export default function DetailEditPage() {
219228
const handleImageUpload = async (e, target) => {
220229
const file = e.target.files[0];
221230
if (file) {
222-
// 미리보기 이미지 URL 생성
223231
const newImageUrl = URL.createObjectURL(file);
224232

225-
// info 상태를 업데이트하여 미리보기 화면에 반영
226-
setInfo((prev) => ({
227-
...prev,
228-
[`${target}Url`]: newImageUrl, // frontImgUrl 또는 backImgUrl에 미리보기 URL 추가
229-
}));
233+
setSelectedImage((prev) => {
234+
const updated = { ...prev, [target]: newImageUrl };
235+
return updated;
236+
});
230237

231238
const updatedFiles = { ...selectedFiles, [target]: file };
232239
setSelectedFiles(updatedFiles);
240+
setInfo((prev) => ({
241+
...prev,
242+
[`${target}Url`]: newImageUrl,
243+
}));
233244

234245
try {
235-
// frontImg와 backImg가 모두 있는 경우에만 API 호출
236246
if (updatedFiles.frontImg && updatedFiles.backImg) {
237247
const combinedFormData = new FormData();
238248
combinedFormData.append('frontImg', updatedFiles.frontImg);
@@ -261,12 +271,15 @@ export default function DetailEditPage() {
261271
});
262272

263273
const handleEditComplete = async () => {
274+
if (!selectedFiles.frontImg || !selectedFiles.backImg) {
275+
alert('두 이미지를 모두 수정해주세요.');
276+
return;
277+
}
264278
const updatedData = updatedDataForm();
265279
if (activeBadge) {
266280
updatedData.categoryName = activeBadge.name;
267281
}
268282

269-
// 이미지 데이터는 각각 따로 관리해서 null로 덮어씌워지지 않도록 처리
270283
if (selectedFiles.frontImg && selectedFiles.backImg) {
271284
updatedData.frontImg = selectedFiles.frontImg;
272285
updatedData.backImg = selectedFiles.backImg;
@@ -399,14 +412,11 @@ export default function DetailEditPage() {
399412
<S.CardAddImageContainer>
400413
<S.GroupButtonBar>명함 이미지</S.GroupButtonBar>
401414
<S.CardImageContainer>
402-
{(info.frontImg && info.backImg) ||
403-
(selectedImage.frontImg && selectedImage.backImg) ? (
415+
{(info.frontImg || info.backImg) &&
416+
(selectedImage.frontImg || selectedImage.backImg) ? (
404417
<>
405418
<S.CardImageBox>
406-
<img
407-
src={selectedImage.frontImg || info.frontImg}
408-
alt='사진 1'
409-
/>
419+
<img src={selectedImage.frontImg || info.frontImg} alt='' />
410420
<S.CardGalleryIcon>
411421
<Icon
412422
id='gallery'
@@ -425,10 +435,7 @@ export default function DetailEditPage() {
425435
</S.CardGalleryIcon>
426436
</S.CardImageBox>
427437
<S.CardImageBox>
428-
<img
429-
src={selectedImage.backImg || info.backImg}
430-
alt='사진 2'
431-
/>
438+
<img src={selectedImage.backImg || info.backImg} alt='' />
432439
<S.CardGalleryIcon>
433440
<Icon
434441
id='gallery'

src/pages/DetailEditPage/DetailEditPage.style.jsx

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -321,8 +321,9 @@ export const AddCardImage = styled.div`
321321
display: flex;
322322
justify-content: center;
323323
align-items: center;
324-
width: 100px;
325-
height: 100px;
324+
width: calc(50% - 10px);
325+
aspect-ratio: 9 / 5;
326+
max-width: 270px;
326327
object-fit: cover;
327328
border-radius: 10px;
328329
background-color: #f4f4f9;

0 commit comments

Comments
 (0)