BackEnd/Node.js

    [Node.js - Express] Node.js Express로 Firebase Firestore DB와 연동하기 + CRUD

    Node.js 프로젝트 생성 $ npm init -y 패키지 설치 $ npm install express firebase dotenv cors Express 프레임워크, Firebase 패키지, dotenv 라이브러리, cors 설치. $ npm install nodemon --save-dev PM2와 비슷하게 파일 변동 시 Node.js 서버를 자동으로 재시작해주는 nodemon 설치. --save-dev 옵션은 설치 후 devDependencies에 추가하는 옵션. "scripts": { "test": "echo \"Error: no test specified\" && exit 1", "start": "nodemon index.js" }, 설치 후 package.json 파일의 "scripts" 부분..

    [Node.js - Express] 서버가 안 켜지는 에러(Node.js express와 Firebase 연동) - (Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in ~~~)

    Node.js Express로 Firebase Firestore DB와 연동하는 과정에서 express 서버가 안 켜지는 에러가 발생했다. 이를 해결하는 과정을 기록. Error Message node:internal/modules/cjs/loader:488 throw e; ^ Error [ERR_PACKAGE_PATH_NOT_EXPORTED]: No "exports" main defined in /Users/-----/Desktop/Node.js_Express_Firebase_CRUD_Practice/node_modules/firebase/package.json at new NodeError (node:internal/errors:371:5) at throwExportsNotFound (node:int..

    [Node.js] PM2 설치 및 사용 (Node.js 중단 없이 서비스, 코드 변동 시 자동 재시작)

    PM2 Node.js 프로세스를 중단, 끊김 없이 관리할 수 있는 Process Manager. --watch 기능을 이용하여 코드의 변동이 있을 시 이를 감지하여 프로세스를 자동으로 재시작해주기도 하는 등의 기능이 존재. 사실 이 기능 때문에 설치함. 너무 편해. 공부할 때도 유용하고, 현업에서도 사용하는 듯 하다. 설치 방법 기본적으로 npm은 설치되어 있을 것이라 생각하고.. $ npm install pm2 -g -g 옵션을 이용해 독립적인 어플리케이션 형태로 설치. (현재 작업 공간에서만 사용하는 것이 아닌 전역으로 설치해줌.) Mac, Linux, Unix 등의 환경에서 권한때문에 설치되지 않으면 sudo npm install pm2 -g 기본 사용법 $ pm2 -v / $ pm2 -versio..

    [Node.js / JavaScript] Node.js 개발환경 설정하기 (2) - TypeScript, 그리고 동적 타이핑(Dynamic Typing).

    Dynamic Typing of JS. JavaScript는 Dynamically Typed Language. - 동적으로 타입(자료형)이 정의되는 언어이다. 즉, 변수를 선언할 때, 타입(자료형)이 미리 지정되지 않고, 변수에 값이 할당되는 과정에서 자동으로 변수의 타입(자료형)이 결정되는 것이다. 따라서 같은 변수에 여러 자료형의 값을 할당해 줘도 문제가 일어나지 않는데, 예를 들면, let a = "HI" console.log(a) // output : HI a = 1 console.log(a) // output : 1 a = "c" console.log(a) // output : c a = "6" + 4 console.log(a) // output : 64 와 같은 코드들이 정상적으로 작동한다는 ..

    [Node.js] Node.js 개발환경 설정하기 (1) - Formatter(Prettier), Linter(ESLint) + Extensions (포매터, 린터 + 여러 확장 프로그램)

    ** M1 Mac, VSCode를 이용한 개발환경 설정입니다 우선 원하는 파일 경로로 들어가서 terminal에 입력 후 시작. $ npm init -y Prettier (Formatter) 1. 먼저, Extensions에서 Prettier 검색 후 설치. 2. 이후 터미널에서 설치해줍니다. $ npm i prettier -D -E i 는 install의 줄임. -D는 --save-dev 의 줄임입니다. $ npm install prettier --save-dev -E 와 같이 입력하셔도 됩니다. 3. cmd + , (settings) 에서 format을 입력해주고 여러 설정을 체크해줍니다. 저는 제 편한 대로 설정함. Format On Paste / Save / Type 모두 체크표시 해줌. 차례로 ..