개발자
너무 쉬운 질문이라 어이없으실 수도 있지만 ㅠㅠㅠ 현재 프로젝트 작업 중인 학생입니다! 문제가 하나 생겼는데 react 로 얼럿창을 띄우는 건 적합하지 않다고 하셔서 jsx를 활용해보려고 하는데 잘 모르겠어요ㅠ 현재 프로젝트 구조가 회원가입 창에서 가입을 하고 메인에서 로그인 한 유저가 다시 회원가입을 누르면 "이미 가입이 완료된 유저입니다"라는 문구가 뜨고 로그인 된상태의 메인이 보여져야 하는데 얼럿을 활용 했을 땐 이펙트 문이 돌면서 회원가입 창에 빠르게 들어갔다 나와져요ㅠㅜ 그래서 jsx 를 쓰려 하는데 많이 어렵네요..
답변 1
리엑트에 입문하신것을 축하드립니다. 😏 먼저 질문의 요지 중 jsx에 대해 정확히 알고 넘어가야 할 듯 합니다. https://react.dev/learn/writing-markup-with-jsx JSX is a syntax extension for JavaScript that lets you write HTML-like markup inside a JavaScript file 즉 Html 요소를 Javascript에 활용하기 위한 것으로 적어주신 jsx를 사용하는 것과 리액트의 기능과는 아무런 연관이 없습니다. (회원가입, route 등과도 관계가 없습니다) "react 로 얼럿창을 띄우는 건 적합하지 않다고" 라는 것은 아마 얼럿창으로 무언가를 알리고 고지하는 것은 되도록 삼가하는게 좋다는 의미로 말씀 하셧을듯 합니다. (임의적으로 확인할 때 가끔 사용하지만 실제 프로젝트 등에서는 모달, 팝업 등을 활용합니다.) "얼럿을 활용 했을 땐 이펙트 문이 돌면서 회원가입 창에 빠르게 들어갔다 나와져요" 이부분은 문구만으로 파악하기 힘드나 1. router등을 활용하지 않고 새로고침을 해서 리랜더링이 일어났다. 2. form 데이터 활용중 이벤트를 정지시키지 않아 새로고침이 나타났다. 3. useEffect를 잘못 사용했다 4. router를 잘못 사용했다 등 여러가지 이유가 예상되나 적어주신 문맥으로는 파악이 불가능합니다. 작성하신 글을 보면 먼저 리액트가 아닌 퓨어 자바스크립트에서 해당 로그인 및 회원가입을 만들어 보시는게 좋을 듯 합니다. 또한 공식 문서, 리액트 예제와 틱택톡 부분을 한번 다시 복습해 보시는 것을 추천 드립니다.
익명
작성자
2024년 02월 06일
말씀하신 것 만으로도 많이 도움이 되었습니다ㅠㅠ 귀한시간 쪼개어 답변해주셔서 감사합니다!!
지금 가입하면 모든 질문의 답변을 볼 수 있어요!
현직자들의 명쾌한 답변을 얻을 수 있어요.
이미 회원이신가요?
지금 가입하면 모든 질문의 답변을 볼 수 있어요!