티스토리 뷰
Client Technologies/React
React : node package.json scripts 속성 사용하기
Korean Eagle 2020. 10. 28. 14:27728x90
1. live-server, babel 같은 범용적으로 많이 사용하는 라이브러리는 npm으로 설치 시에 global로 사용하면 편하다.
1-1 문제는 이런 실행형 프로그램들은 버전이 자주 바뀌고 이 프로그램이 실행하는 소스와 호환성 문제도 생기기 쉽다.
1-2 요즘에는 이런 호환성 문제로 global 설치는 권장하지 않고, 1회성 실행형의 경우 npx로 실행을 많이 하고
1-3 작성한 프로그램과 밀접하게 연관되어 계속 실행해야 하는 webpack, babel같은 프로그램은 내장형으로 설치한다.
1-4 예를 들면 지난 번까지 실행한 프로젝트의 package.json의 경우 모두 내장형으로 설치되었다.
{
"name": "react-basic",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"@babel/cli": "^7.12.1",
"@babel/core": "^7.12.3",
"@babel/preset-env": "^7.12.1",
"@babel/preset-react": "^7.12.1",
"live-server": "^1.2.1"
}
}
1-4-1 이렇게 설치하면 실행코드가 ./node_modules/.bin/ 으로 시작해야 정상적으로 동작하게 된다.
./node_modules/.bin/live-server public
./node_modules/.bin/babel src/app.js --out-file public/scripts/app.js --presets=@babel/preset-env,@babel/preset-react --watch
1-5 위와 같이 실행하면 상당히 귀찮다. 그래서 우리는 package.json의 scripts 속성을 사용하여 명령을 지정할 수 있다.
{
"name": "react-basic",
"version": "1.0.0",
"description": "",
"main": "index.js",
"scripts": {
"serve": "live-server public/",
"build-babel": "babel src/app.js --out-file public/scripts/app.js --presets=@babel/preset-env,@babel/preset-react --watch",
"test": "echo \"Error: no test specified\" && exit 1"
},
"author": "",
"license": "ISC",
"dependencies": {
"@babel/cli": "^7.12.1",
"@babel/core": "^7.12.3",
"@babel/preset-env": "^7.12.1",
"@babel/preset-react": "^7.12.1",
"live-server": "^1.2.1"
}
}
1-5-1 scripts 속성에 원하는 이름으로 실행을 원하는 명령어를 입력하면 npm run + 실행이름으로 기동할 수 있다.
728x90
'Client Technologies > React' 카테고리의 다른 글
React : Webpack dev server 및 소스 맵 사용하기 (0) | 2020.10.28 |
---|---|
React : webpack으로 React 개발 자동화하기 (0) | 2020.10.28 |
React : 리액트 컴포넌트 라이프 사이클과 LocalStorage (0) | 2020.10.26 |
React : 함수 컴포넌트, 기본 props 값 설정하기 (0) | 2020.10.26 |
React : State 사용하기와 부모 컴포넌트 함수 호출 (0) | 2020.10.26 |
댓글
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
- 도커 개발환경 참고
- AWS ARN 구조
- Immuability에 관한 설명
- 자바스크립트 멀티 비동기 함수 호출 참고
- WSDL 참고
- SOAP 컨슈머 참고
- MySql dump 사용법
- AWS Lambda with Addon
- NFC 드라이버 linux 설치
- electron IPC
- mifare classic 강의
- go module 관련 상세한 정보
- C 메모리 찍어보기
- C++ Addon 마이그레이션
- JAX WS Header 관련 stackoverflow
- SOAP Custom Header 설정 참고
- SOAP Custom Header
- SOAP BindingProvider
- dispatcher 사용하여 설정
- vagrant kvm으로 사용하기
- git fork, pull request to the …
- vagrant libvirt bridge network
- python, js의 async, await의 차이
- go JSON struct 생성
- Netflix Kinesis 활용 분석
- docker credential problem
- private subnet에서 outbound IP 확…
- 안드로이드 coroutine
- kotlin with, apply, also 등
- 안드로이드 초기로딩이 안되는 경우
- navigation 데이터 보내기
- 레이스 컨디션 navController
- raylib
TAG
- 설정하기
- 설정
- 로그인
- Validation
- one-to-many
- 상속
- jsp
- MYSQL
- one-to-one
- crud
- Rest
- Spring
- login
- 하이버네이트
- RestTemplate
- XML
- 매핑
- 스프링부트
- hibernate
- spring boot
- 스프링
- Security
- form
- mapping
- 자바
- WebMvc
- Many-To-Many
- Spring Security
- 외부파일
- Angular
250x250