pm2 with typescript
·
기타/잡동사니
pm2는 Process Manager 2 의 약자로 프로세스를 관리해주는 툴이다. 요녀석은 기본적으로 node.js 를 실행해주는데 이 글에선 .ts (타입스크립트) 기반 앱을 바로 실행시키는 법을 다뤄보겠다. 프로젝트 내에서 js와 ts 모두 사용중이고, 각각이 별도의 앱이라 굳이 하나의 형식으로 통합하기 보다는 js 는 node로 ts 는 ts-node 로 실행하고있다. 아직은 개발단계라 ts-node 사용으로 인한 성능저하는 크게 고려하지 않는다. 대신, transpileOnly: true 설정을 통해 성능저하를 최소화 해두었다. pm2 설치 # npm, yarn 무엇을 쓰든 상관 X $ npm install -g pm2 # 타입스크립트 지원을 위해 $ pm2 install typescript 보통..
node_modules 와 package.json
·
Web/Nodejs
🎯 Goals node_modules 한 프로젝트 내에 여러개 있으면 좋을까? package.json 한 프로젝트 내에 여러개 있으면 좋을까? 각 파일(모듈)이 패키지를 찾아가는 원리를 파악한다. node_modules 실제 라이브러리가 설치되는 디렉토리 모듈이 경로를 명시하지 않고 패키지 이름만 덩그러니 명시하면 이 파일 내에서 불러온다. // orchestration.ts // [CASE I] 패키지명만 명시 import axios from 'axios'; // [CASE II] 상대경로 지정 import requestConfig from '../../config/axiosRequestConfig.json'; // (생략) CASE I 현재 파일의 한 단계 상위디렉토리(src/node_modules)..
Webpack
·
Web
Concept .js, .css, .sass, .png 등 각종 리소스를 하나의 파일로 번들링하는 도구. Why to use? Resolve cross-browser issue Reduce amount of network load by integrating all files to bundling one. HTTP 1.1 까지는 한 번에 하나의 파일만 요청 - 응답하여 받기 때문에 웹 페이지의 구성파일이 총 100개라고 치면 100번 요청해야한다. 얼마나 비효율적인가? Configure webpack.config.js || webpack.config.ts Node.js + Typescript 기반의 프로젝트라면 다음과 같이 설정해볼 수 있다. 모르겠으면 그냥 복붙하자. 공식 문서를 참조한 주석을 상세히 달..
[Typescript] Creating Custom Types
·
Web/Nodejs
When Create Custom Type? Program has complex data structures Basic tyeps (primitive types) don't describe completely the data structures I'm using When creating Library Cooperation with others and needing define new class, interface etc.. How To Make Custom Type Syntax? Use `type` keyword! How to use it smartly? 보통 `types.d.ts` 파일로 타입을 정의하는 것이 국룰이다. 1. *.d.ts 타입 정의 2. import {타입명} from '*.d.ts' ..
TypeScript + Koa 프로젝트 생성
·
Web
필수 패키지 설치 > npm init --y > npm i koa > npm i --save-dev typescript ts-node nodemon @types/koa @types/node ## 이 부분은 Visual Studio Code Plugin을 사용하면 굳이 추가설치 하지 않아도 되긴한당. > npm i --save-dev eslint eslint-config-prettier @typescript-eslint/parse ts-node: 트랜스파일링을 파일(.js)로 생성하지 않고 바로 메모리단에서 수행해주는 착한 친구다. ※ 패키지명에 @types/ 가 붙은 것은 TypeScript를 지원하는 패키지로 구글링해서 npm 패키지가 나오면 존재하는 것이다.! 그냥 바로 설치해주도록 하자. npm '..