목록TIL(Today I Learned) (89)
우주먼지 개발 log

중간발표 발표자 당첨 ㅇ0ㅇ 1. 발표자료 발표자료 TOOL 사용 - Canva 너무 좋잖아! 프로젝트 진행 상황 ✓ MVP 기준 상세페이지 조금이랑, 프로필 페이지 CUD 남음 회고 보여주는 부분이 더 완벽했으면 좋았겠지만, 기능은 많이 들어가있어 우리! 만족 근데 이번에도 문서를 잘 안 읽고 만들었다. 기술적 내용 의주로 적으라고 했는뎀 쩝~!

오늘도 화이팅! 1. 신난당 1 : 조건부 렌더링 에러 Unhandled Runtime Error NotFoundError: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of this node. 리액트 에러 해결: React DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a child of 프로젝트 진행을 하다가 에러가 났다.React DOMException: Failed to execute 'removeChild' on 'Node': The node to be removed is not a chi..

오늘도 화이팅! 1. 카테고리 선택 창 카테고리라고 칭했지만 글종류를 의미하는 건 아니고, 글쓸 때 저 많은 선택 사항들을 의미한건데, DB에서 읽어오고 저장할 데이터가 너무 많아. DB 지옥을 경험했다. 카테고리로 필터링을 해야하는 동료가 있어서, 그 부분에서는 DB에서 읽어서 뿌려줘야하는데, 그건 같이 해서 다행이었다. 1. db에서 읽어오는 부분 - 포지션에 따른 기술스택들 : 이것밖에 없긴한데, db가 복잡한 죄로 제일 어려웠다. -> 이것도 몇개 없을 텐데 하드코딩으로 뿌려줄걸 그랬다ㅋㅋㅋㅋ 물론 이렇게하면 이름 조금 틀리면 망함. 2. 저장할 DB : - Projects Table (프로젝트방식, 오프라인이면 지역, 프로젝트 시작일, 종료일, 인원) - Project_position (프론트엔..

onSuccess의 1번째 매개변수를 받으면 return 된 data 있음! 오늘도 화이팅! 1. useMutation 쓸 때 mutationFn에서 리턴 값은 어디로가나.. onSuccess의 첫번째 매개변수에서 받을 수 있다. 사용 안할거면 리턴도 안해도된다. const queryClient = useQueryClient() const { isPending, isError, error, mutate } = useMutation({ mutationFn: setProject, onSuccess: () => { //1번째 매개변수를 받으면 return 된 data 있음! // queryClient.invalidateQueries({queryKey:["projects"]}) alert("게시물 작성 완료~!..

오늘도 화이팅! 1. useState 한번에 쓰기 https://velog.io/@postlist/REACT-useState data가 많아서, 정신못차림 -> state를 하나의 객체로 작성하고 카테고리를 하위 컴포넌트로 분리해줬는데 그쪽에서 set을 다 해주도록.. setState도 넘겨버리고.. const Write = () => { const initialCategoryData = { startDate: "", endDate: "", isOffline: false, region: "", numberOfMembers: 0, position: [{ name: "" }], techs: [{ name: "" }], // TODO: tech에 여러개 받고 한번에 넣는 법.. } const [title, s..

오늘도 화이팅! 1. Tailwind 반복되는 style -> @apply 계속 반복되는 tailwind 작업을 어떻게 해야할까 검색해보았다.. //(as-is) 오프라인 온라인 globals.css를 만들어 두었긴 했는데 여기에 적용하는게 맞을지는 의문이지만.. css 파일이 이것밖에 없어서.. 이쪽에 @apply를 이용하여 반복되는 스타일 클래스를 하나 지정해주었다~ 곂치는 부분만! 오버라이딩이.. globals.css가 나중에 실행되어서 덮어써짐, 연산자를 써줘야할것같긴한데 급한대로 패스해버림 ; ; // (To-be, globals.css) .category { @apply border-[1.5px] px-[20px] py-[5px] rounded-full; } //(To-be) 오프라인 온라인 ..

오늘도 화이팅! TipTap 뽀시기 prep) 설치 npm install @tiptap/react @tiptap/pm @tiptap/starter-kit //나는 얀 쓰니까 yarn add @tiptap/react @tiptap/pm @tiptap/starter-kit 일단 어제까지의 작업 : 모든 것은 아래 예제 코드에서 시작... 일단 button 으로 구현된 메뉴들은 하나하나 아이콘으로 바꿔보았다. h1 부터 p까지는 아이콘 아니고 그냥 버튼인데, 나중에 셀렉트 박스로 바꿀예정. 예제 : https://tiptap.dev/docs/editor/examples/default 아이콘은 React icons : https://react-icons.github.io/react-icons/icons/md/ ..

진척 없음 ^0^ 1. tiptap 몰?루 예제 그대로 하니 나오긴 함! css -> tail wind로 바꿔보자.. 2. Next js에서 서버 구현 + 크롤링 세션 - 와! 유용했는데 아직 정확히 익히지 못해서 코드 살펴보기! - 방법 4가지!! 중에 app router 방식 2가지만 알자 3. 개발자 추천 사이트 - 시간날때 보자요 긱뉴스 (개발관련 기술 늬우스) 서핏 (UI가 더 좋아보임) 프론트오버플로우 프로젝트 진행 상황 ✓ 멘토링 피드백 (주로 ERD 점검 받음) ✓ 피드백에서 나온 DB 수정사항 반영 -> 타입파일 바꿔줘야 함 (내일아침) ✓ 메인페이지 와이어프레임과 같게 레이아웃 반영 - 갓은비 ✓ 상세페이지 css 없이 안맞춘채로 html 레이아웃만 반영 -갓지향 회고 왜케 진도가 느..

오늘도 화이팅! TIL 애매모호한 것 1. timestamp vs timestamptz 날짜와 시간정보를 가지고 있는 type (단위 1miliseconds) https://dev-j.tistory.com/13 PostgreSQL timestamp vs timestamptz PostgreSQL에서 날짜와 시간을 표현하는 데이터 타입은 6가지가 있다. 하지만 그 중에서 날짜와 시간을 한번에 표현할 수 있는 데이터 타입은 timestamp와 timestamptz 2가지밖에 없다. timestamptz는 이름에 dev-j.tistory.com - Date는 ? 1day 단위 time 정보 없음 (YYYY-MM-DD, DD-MON-YYYY, etc.) 2. 해커에게 안전하게 supabase 사용 유진영튜터님의 ..

유진영튜터님 짱.짱. TIL 관계형 database를 위한 ERD 작성 중 (매우 혼란) 1:1 (유저 고유값.. 이름 그런것..) - 그냥 유저 테이블에 기입하자 1:n (유저들이 잘하는 것 한가지) - 관계성 database 에서는 정보는 한쪽만 알아도 됨 - 바람둥이와 여자들이 있으면 여자만 바람둥이를 기억하는 것이 쉬움 - 잘하는 것을 테이블을 만들고, 유저가 n 이므로 유저에 잘하는 것 id를 기입 n:m (유저들이 선택한 기술스택들 여러가지) - 유저도 기술들을.. 기술도 우리들을 중복으로 가지고 있음 - 유저에 기술 테이블을 늘릴 수도, 기술에 유저 테이블을 늘릴 수도 없음. - 유저아이디와 기술아이디를 저장하는 중간 테이블이 필요하다. 튜터님 정리 User TechStack -------..