코드/Npm 7

[Vite] Cannot find type definition file for 'vite/client'. The file is in the program because: Entry point of type library 'vite/client' specified in compilerOptions

Vite 의 경우 typeRoots 의 설정이 조금 더 필요합니다.Vite 의 타입파일은 node_modules/vite 아래에 존재합니다.node_modules/vite/types node_modules/vite 는 일반적인 경우와 다르게 node_modules/@types 가 타입 루트가 아님으로 별도로 설정을 해줘야 합니다.tsconfig.js 파일에서 아래와 같이 추가 합니다.{ // https://nuxt.com/docs/guide/concepts/typescript "extends": "./.nuxt/tsconfig.json", "compilerOptions": { "types": [ "@pinia/nuxt", "vite/client", "./types/..

코드/Npm 2024.10.25

[Npm] dotenv, cross-env

application 의 초기화 시점에는 다양한 환경 변수가 필요 할수 있습니다. 예를 들어 APPLICATION KEY등 서비스 로직과는 약간 다른 범위의 설정값이 필요한 경우가 많습니다. .env 파일을 생성하여 필요한 값들을 넣어 주면 됩니다. platform='mobile' application_key='123456' device_version='1.0.1' 어떤 강의에서는 node --env-file=.env index.js 형태로 사용하면 된다고 알려 줬지만 실제로는 동작하지 않고 bad option 이라는 오류가 노출되는 상황이 되어 다른 방법으로 설정값을 코드에 적용 했습니다. // index.js import 'dotenv/config' console.log('env value= ', p..

코드/Npm 2024.01.10

[npm] 사용자 로컬 경로 사용하여 다른 npm 라이브러리 설치

외부 라이브러리 설치시 로컬에 개발된 패키지를 로컬 경로를 이용해 설치할 수 있다. custom-package 폴더에 다음과 같은 파일이 있다고 가정 Logger.js /* Custom-package 폴더 */ // Logger.js function infoLog(level, message) { process.stdout.write(`${level}: ${message}`); } export class Logger { debug(message) { infoLog('Debug', message); } info(message) { infoLog('Info', message); } error(message) { infoLog('Error', message); } } index.js // index.js imp..

코드/Npm 2023.11.28

[npm] 모노레포를 위한 기본적인 워크 스페이스 지식

npm 워크 스페이스 command 예시 # 모든 워크 스페이스에서 npm script 실행 # npm run {스크립트명} -ws npm run test -ws # 특정 워크 스페이스에서 npm script 실행 # npm run {스크립트명} -w {워크스페이스명, 혹은 경로} npm run server:start -w packages/server # 특정 워크 스페이스에 라이브러리 설치하기 # npm i {라이브러리명} -w {워크스페이스, 혹은 경로} npm i --save-dev jest -w packages/client

코드/Npm 2023.11.24