-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[GGFE-148] 관리자 - 거래내역, 상점, 재화정책 관리 - 버튼 기능 추가, 모달 추가 #922
The head ref may contain hidden characters: "GGFE-148-\uAD00\uB9AC\uC790-\uC0C1\uC810\uC544\uC774\uD15C-\uC218\uC815-\uC0AD\uC81C-\uAE30\uB2A5-\uCD94\uAC00"
Conversation
components/admin/coin/CoinPolicy.tsx
Outdated
const rankWin = Number(rankWinRef.current?.value); | ||
const rankLose = Number(rankLoseRef.current?.value); | ||
|
||
if (attendance <= 0 || normal <= 0 || rankWin <= 0 || rankLose <= 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
랭크게임 패자에게 코인을 안 줄 수도 있어서 0으로도 수정할 수 있도록 조건에 = 을 빼면 좋을 것 같아요!
url: `/admin/coinpolicy?page=${currentPage}&size=5`, | ||
setState: (data) => { | ||
// instanceInManage로 변경 | ||
const getCoinPolicyHistoryHandler = useCallback(async () => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
최적화에 대해서는 생각해보지 못했는데 더 공부해봐야겠네요! 새로운 것 배워갑니다👍
} | ||
}, [currentPage]); | ||
|
||
const openDetailModal = (itemHistory: IitemHistory) => { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
이 모달이 여러 곳에서 쓰이던데 나중에 리팩토링한다면 id랑 content 받아서 쓸 수 있도록 분리해두어도 좋을 것 같네용
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
일단은 intraId 대신 detailTitle이라는 인자에 받아서 사용하게 타입 추가해서 적용시켜놨습니다. 👍
const price = Number(priceRef.current?.value); | ||
const discount = Number(discountRef.current?.value); | ||
|
||
if (price < 0 || discount < 0) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
discount 최댓값도 100으로 걸어두면 좋을 것 같네요!
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
스낵바도 잘 뜨고 적용 아이템 삭제됐을 때 알림도 잘 오네요! 파일도 엄청 많던데..!! 고생하셨습니다👍👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
관리자페이지쪽은 파일 하나의 크기가 진짜 너무 크네요...... 고생 많으셨습니다!
작업하신 내용들 모두 확인했고 잘 동작하는 것 확인했습니다.
api 에러 응답들 좀 더 구체화되면 에러 메시지들도 구체적으로 넣어주긴 해야 할 것 같네요 ㅎㅎㅜ
수고하셨습니다!!! 👍👏
const attendanceRef = useRef<HTMLInputElement>(null); | ||
const normalRef = useRef<HTMLInputElement>(null); | ||
const rankWinRef = useRef<HTMLInputElement>(null); | ||
const rankLoseRef = useRef<HTMLInputElement>(null); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
굳이 재랜더링이 필요하지 않은 경우기 때문에 입력 값을 state로 관리하지 않고 useRef
를 쓴건 좋은 생각인 것 같습니다!
개인적으로 저는 useRef
가 많아지면 좀 헷갈리기도 하고 그래서 input 값을 state로 관리하지 않아도 되고, 입력 값을 form 형태로 전송하는 것이 자연스러운 경우에는 FormData
를 활용하는 편인 것 같아요! (admin의 ModifyScoreForm
컴포넌트 에서도 이렇게 썼네요!)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
오 formData에서 input 값을가져오는 방식이 훨씬 코드 가독성도 좋고 간결하네요! 배워갑니다!!
피드백 주신 코인, 할인율 조건 추가했습니다. |
피드백 주신 useRef 대신 formData로 관리하는 방식을 editItem 모달에 적용했습니다. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
확인했습니다! 수고하셨습니당 👍
📌 개요
💻 작업사항
pr 나눠서 올려보려고 했는데 작업이 겹치는 부분도 많고 디자인도 비슷해서 한 번에 작업해서 올립니다. 죄송합니다 🙇
확성기, 프로필 삭제
아이템 수정, 삭제
재화 정책 등록
기타
추가 필요 작업
✅ 변경로직