전체 글

회고록/싸피 공통프로젝트

싸피 공통프로젝트 마지막 29~31일 차 회고록

31일차가 마지막 발표날이라서 바빴기 때문에 이번 회고록은 3일치를 한꺼번에 작성하게 되었다. 29일차 오늘은 팀원끼리 6시 이후에도 카페에 모여서 코딩을 하기로 했다. 확실히 옆에 팀원이 있으면 노트북 들고 바로 물어보기는 편한 것 같다. 30일차 프로젝트 개발 마지막 날 맥북이 도착했다 React Native를 사용하더라도 개발 세팅하기 편하다는데 처음엔 안익숙해서 뭐가 편하다는건지 몰랐다 하지만 nvm을 설치할때 느끼게 되었다 직관적으로 brew install nvm이라고 입력하면 설치가 되었다. 라고 생각하고 설치를 마치니 ubuntu와는 다르게 쉘에 무언가를 추가해줘야한다는 것을 알게되었다 흠... 아직 조금 더 지켜봐야할 것 같다 터미널은 확실히 예뻐져서 너무 좋다 내가 좋아하는 oh my z..

회고록/싸피 공통프로젝트

싸피 공통프로젝트 28일차 회고록

오늘 엄청난 오류 해결법을 알았다. 이상하게 nextjs 프로젝트가 실행이 되지않았다. 오류 메세지도 너무길어서 스크롤을 다 올려도 짤려서 보일 정도였다. 겨우 겨우 도움이 될 만한 부분을 찾아서 GPT에게 물어보니 대소문자 이슈였다 폴더 이름이 "FE" 였는데 cd fe로 가서 nextjs에서 경로가 다르다고 인식한 것 같았다. 윈도우에서는 폴더에서 대소문자를 구별하지 않는데 UNIX계열에서는 구분한다고 한다... 여태까지 react 프로젝트에서는 이슈가 발생하지 않았기 때문에 상상도 못했었다. nextjs의 app router가 버그가 많다고 하던데.... 그냥 nextjs 자체가 버그가 많은걸까 하는 생각도 들었다 하지만 강의는 nextjs가 많아서 SSR을 사용한다면 nextjs를 사용하게 될 것..

트러블슈팅

예기치 않은 응용 프로그램 오류!'Node'에서 'insertBefore'를 실행하지 못했습니다.새 노드가 삽입되기 전에 노드가 이 노드의 자식이 아닙니다.

💡오류 원인 브라우저 번역기를 사용하면, 번역기가 텍스트를 태그로 감싼다. 하지만 리액트에서 변경된 내용을 감지하지 못한다. DOM 트리에서 사라진 객체를 참조하려고 해서 문제가 발생한다. ✅내가 선택한 해결 방법 내가 만든 서비스는 한국어 사용자만을 대상으로 한다. 따라서 html 태그에 를 적용하고 끝내는 편이 효율적인 것 같았다. ➕다른 방법 해당 텍스트 노드를 으로 감싸서 내용이 태그로 대체되더라도 React에서 참조하는 노드가 DOM 트리에 유지되도록 하는 방법 i18n을 사용하는 방법

개발환경

윈도우에서 EC2 인스턴스 ssh로 접속하는 방법 (putty 없이 가능)

요즘 마이크로소프트 터미널이 잘 되어있어서 putty를 굳이 설치하지 않아도 서버에 접속할 수 있다. 그리고 putty보다 예쁘게 사용할 수 있다. Windows Terminal 설치 이미 설치되어있다면 건너뛰어도 된다. 1. Microsoft store에 접속한다. 2. '터미널'을 검색한다 3. Windows Terminal을 설치한다. 설치가 다 되면 열기를 누른다 ssh 설정 1. ssh 키를 지정된 경로에 저장한다. C:\Users\사용자명 으로 이동해서 .ssh 폴더를 만든다. C:\Users\ 사용자명 \.ssh에 ssh키를 저장한다. 2. config 파일을 만든다 주의 : 확장자 없이 만들어야 한다. 내용은 아래와 같이 적는다. Host mydomain HostName mydomain.c..

개발환경

자주 쓰는 리눅스 screen 명령어 모음

screen이란? screen을 사용하면 여러 개의 가상 터미널 세션을 생성하고, 여러 작업을 동시에 실행하거나 백그라운드에서 실행할 수 있다. 사용 예시 docker를 사용하지 않고 수동 배포를 할 때 유용하게 사용할 수 있다. 나는 주로 간단한 jar파일 실행시켜둘 때 유용하게 사용했다. screen은 설치되어있는 경우도 있어서 그냥 사용하면 된다. 설치 방법 apt-get install screen 스크린 명령어 명령어 설명 screen 스크린 생성 screen -ls 스크린 목록을 보여준다. screen -S [세션명] 지정한 세션명으로 스크린 생성 screen -r [세션명 또는 세션ID] 스크린 재진입(싱글 모드) (스크린이 한개면 이름 생략 가능) screen -x [세션명 또는 세션 ID]..

트러블슈팅

npm i @socket.io/admin-ui 식에서 변수를 참조하는 데 스플랫(splat) 연산자 '@'를 사용할 수 없습니다.

npm i @socket.io/admin-ui 위치 줄:1 문자:7 + npm i @socket.io/admin-ui + ~~~~~~~ 식에서 변수를 참조하는 데 스플랫(splat) 연산자 '@'를 사용할 수 없습니다. '@socket'은(는) 명령 인수로만 사용할 수 있습니다. 식에서 변수를 참조하려면 '$socket'을(를) 사용하십시오. + CategoryInfo : ParserError: (:) [], ParentContainsErrorRecordException + FullyQualifiedErrorId : SplattingNotPermitted VSCode에서는 이렇게 된다고 한다 npm i "@socket.io/admin-ui" 라고 쌍따옴표로 감싸주면 해결된다 또는 윈도우 터미널 등에서 n..

회고록/싸피 공통프로젝트

싸피 공통프로젝트 27일차 회고록

확장앱 심사를 등록했다. 개인정보 처리방침을 생성해주는 사이트가 개편되어서 개인정보 처리방침을 생성하는 기능이 사라졌다... 영문으로 개인정보 처리 방침을 만들어주는 사이트가 여럿 있길래 그중 하나를 사용해서 만들어서 제출했다. 내가 사용한 사이트는 아래와 같다. 나처럼 개인정보 처리방침 때문에 고민인 분들이 있을텐데, 영문 사이트를 잘 활용해보면 좋을 것 같다. 한국어 확장앱이긴 하지만 개인정보 처리방침을 영문으로 제출해도 통과되었다. https://app.freeprivacypolicy.com/wizard/privacy-policy 첫 심사 등록이라 오래 걸릴거라고 생각했는데 아침에 등록하고 저녁이 되니 심사가 끝나있었다. 운이 좋았다. 회의를 통해 앞으로 해야할 일을 정리하고 담당자를 정했다. 곧 ..

리즈(Liz)
localhost:5173