본문 바로가기
  • 하고 싶은 일을 하자

리액트12

술담화 쇼핑몰 Form 에러 처리 변경하여 결제페이지 체류 시간 감소, 이탈률 감소 시키기 술담화 쇼핑몰(https://sooldamhwa.com/)에서 8월 말 선물하기 기능을 추가하면서 결제 페이지의 대대적인 디자인 변경이 있었다. 결제 페이지 쪽 개발을 하면서 기존 결제 기능에 개선하고 싶은 부분을 발견했다. 술담화에는 장바구니에 상품을 담아서 결제하거나, 제품을 바로 구매하는 경우 결제 페이지로 이동한다. 결제 페이지에서 배송지 확인 및 수정, 주문하는 상품 확인, 결제 방법 선택, 쿠폰 선택, 포인트 입력, 정보제공 동의를 한 뒤에 결제 버튼을 누르면 결제가 진행된다. 기존에는 결제 버튼은 항상 비활성화되어 있고, 결제에 필수인 항목인 결제 방법과 개인정보 제공 동의를 하면 결제 버튼이 활성화되어 결제를 할 수 있는 방식이었다. 이 방식은 유저가 어떤 항목이 필수로 입력해야 하는지 알.. 2022. 10. 10.
[코드숨 리액트 강의] 5주차 회고 - 비동기 코드에서 Thunk를 쓰는 이유 드디어 강의의 절반을 넘게 들었다! 8주차까지면 끝인데 벌써 5주차가 끝나다니 시간 참 빠르다. 이번주는 수요일 휴일이 있어서 여유가 있었다. redux와 비동기 fetch를 TDD로 개발하는 것을 배웠다. 지난번 첫 TDD를 개발해서 그런가 이번 과제는 처음 TDD를 접했을 때 보단 수월했다. 과제를 월요일부터 시작해서 제출하면 더 좋을 것 같다. 코드 리뷰를 좀 더 받는게 나에게 큰 도움이 될 것 같다. -> 내일부터 과제 해보자! Fetch 테스트 jest로 테스트하는 것은 런타임 때 테스트하는 것이 아니기 때문에 실제로 fetch 이후 response를 받아서 테스트가 진행되지는 않는다. useSelector.mockImplementation((selector) => selector({ categ.. 2022. 6. 6.
React에서 setInterval 제대로 쓰는 방법 React에서 setInterval을 사용하는 방법은 Vanila Javascript와는 다릅니다. 아래의 예시 코드를 보시죠. import { useState } from "react"; import "./styles.css"; export default function App() { const [number, setNumber] = useState(0); const loop = setInterval(() => { console.log("number", number); setNumber(number + 1); if (number === 10) clearInterval(loop); }, 1000); return number : {number}; } 10초를 센 뒤에 루프가 끝나는 코드로 동작할 것 같지만.. 2021. 7. 29.