Nodemon으로 시작 스크립트를 실행하는 방법


90

Nodemon 을 사용하여 package.json 파일 에서 시작 스크립트를 어떻게 실행할 수 있습니까?


package.json에서 시작 스크립트를 실행할 수 있습니까? 내가 아는 package.json은 모든 종속성을 나열하고 nodemon은 프로세스를 계속 실행하는 것입니다. 여기서 무엇을 암시하고 있는지 잘 모르겠습니다.
Saras Arya 2015

답변:


141

이것은 이것에 대한 간단한 명령이 될 것입니다

nodemon --exec npm start

앱을 실행하지 않고 테스트 만 실행해야하는 경우 어떻게합니까? 솔루션은 둘 다 실행합니다.
Sergey

1
이것은 실행 npm start되지만 나를 위해 노드 서버를 시작하지 않습니다 .. server.js가 어디에 있는지 어떻게 알 수 있습니까?
Sonic Soul

38

패키지 json에서 :

{
  "name": "abc",
  "version": "0.0.1",
  "description": "my server",
  "scripts": {
    "start": "nodemon my_file.js"
  },
  "devDependencies": {
    "nodemon": "~1.3.8",
  },
  "dependencies": {

  }
}

그런 다음 터미널에서 사용할 수 있습니다. npm start

Nodemon 설치 : https://www.npmjs.com/package/nodemon


1
죄송합니다. 시작 스크립트 에서 nodemon을 실행하지 않고 nodemon으로 시작 스크립트를 실행하는 방법을 찾고 있습니다. 명확하지 않다면 죄송합니다.
Citronen 2015

6
하지 않습니다 npm startnodemon의 부족으로 생산에 실패?
ripper234

2
npm run start하지npm start
M. Dhaouadi

1
저는 npm 초보자입니다. 기본적으로 nodemon을 사용할 수있는 동안 시작 스크립트를 지정해야하는 이유를 이해할 수 없습니다. npm으로 nodemon을 설치하고 스크립트를 지정하지 않고 직접 사용하면 완벽하게 작동합니다.
Hokhy Tann

M.Dhaouadi는 @ npm start의 별칭입니다npm run start
조지

16

"server.ts"라는 TypeScript 파일이 있습니다. 다음 npm 스크립트는 내 앱을 시작하고 TypeScript 파일의 변경 사항을 모니터링하도록 Nodemon 및 npm을 구성합니다.

"start": "nodemon -e ts  --exec \"npm run myapp\"",
"myapp": "tsc -p . && node server.js",

종속성에 대한 Nodemon이 이미 있습니다. 내가 실행하면 npm startNodemon에게 -e스위치를 사용하여 파일을 모니터링하도록 요청한 다음 myapptypescript 파일을 변환 한 다음 결과 server.js를 시작하는 간단한 조합 인 npm 스크립트를 호출합니다 . TypeScript 파일을 변경하면 -e스위치로 인해 동일한주기가 발생하고 새 .js 파일이 생성되고 실행됩니다.


14

Node.js 프로젝트에서 Nodemon 버전 1.88.3을 사용합니다. Nodemon을 설치하려면 https://www.npmjs.com/package/nodemon을 참조 하십시오 .

package.json을 확인하고 "스크립트"가 다음과 같이 변경되었는지 확인합니다.

  "scripts": {
    "dev": "nodemon server.js"
  },

server.js내 파일 이름 app.js입니다. 이 파일에 .

그 후 터미널에서 다음을 실행하십시오. npm run dev



5

먼저 package.json 파일을 변경하십시오 .

"scripts":
    { 
        "start": "node ./bin/www",
        "start-dev": "nodemon ./app.js"
    },

그 후 명령을 실행하십시오.

npm run start-dev

1
그러나 당신은 도망 때 app.js당신이 모든 것을 무시하고있다 ./bin/www... 않습니다
제이크 윌슨

1
매번 열리는 새 탭
Qui-Gon Jinn

5

package.json 파일에서. 이렇게 파일 변경

"scripts":{ 
   "start": "node ./bin/www", 
   "start-dev": "nodemon ./app.js"
 },

그런 다음 npm run start-dev 를 실행하십시오.




1

자주 사용하기 위해 nodemon을 전역 적으로 설치할 수도 있습니다.

npm i nodemon -g 또는 sudo npm i nodemon -g

그런 다음 package.json을 편집하십시오.

  "scripts": {
    "start": "node index.js",
    "dev": "nodemon index.js"
  },

일반적으로 'dev'는 개발 용도를 지정합니다 ( npm run dev ).


1

Nodemon 설치 유형에 따라 다릅니다. 명령 ( npm install nodemon --global또는 npm install nodemon -g) 을 사용하여 Nodemon을 전역으로 설치하는 경우 package.json 파일 에서 Nodemon에 대한 스크립트를 지정할 필요가 없습니다 . 명령 실행 중nodemon index.js 하면 프로젝트가 실행됩니다.

그러나 명령으로 Nodemon을 로컬에 설치 npm install nodemon하는 경우 스크립트를 지정해야합니다. 당신이 그것을 이름처럼 시작npm run start또는 npm start실행하는 서버를 트리거합니다.

// Absolutely no need for global installation
 "scripts": {
    "start": "nodemon index.js"
  }

1

이 경우 nodemon전 세계적으로 설치, 단순히 실행 nodemon자동으로 실행 프로젝트에서 start에서 스크립트를 package.json.

예를 들면 :

"scripts": {
  "start": "node src/server.js"
},

에서 nodemon 문서 :

nodemon은 또한 package.json (nodemon 1.1.x 기준)에서 scripts.start 속성을 검색합니다.


0

패키지 json:

"scripts": {
  "start": "node index",
  "dev": "nodemon index"
},

"devDependencies": {
  "nodemon": "^2.0.2"
}

그리고 개발을위한 터미널에서 :

npm run dev

그리고 서버를 정기적으로 시작하려면 :

npm start

"regiuler" 는 무엇입니까 ? "regular" 를 의미 합니까?
Peter Mortensen

-1

전역 설치를 방지하려면 Nodemon을 종속성으로 추가 한 다음 ...

package.json

"scripts": {
    "start": "node ./bin/www",
    "start-dev": "./node_modules/nodemon/bin/nodemon.js ./bin/www"
  },

devDependencies 아래에 설치하면 "start-dev": "nodemon ./bin/www"로 만들 수 있습니다.
WoLfPwNeR
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.