### npm run build
---
許多 JavaScript 項目都遵循一個簡單的約定:輸入 `npm run build` 執行任何項目使用的構建系統。這點非常有用是因為它意味著有人想幫著貢獻你的項目,他可以直接投身進源碼中,而不需要知曉任何與之綁定的基礎設施(像Rollup, 或 Webpack, 或 Gulp, 或一些更為難懂的)。他們甚至不需要全局安裝它,正如我們在第一部份所做的一樣。
設置你自己的 `npm run build` 腳本是非常好并且是直截了當的。
### 創建立一個 package.json 文件
一個 package.json 包含關于你項目的重要信息,包括它的名稱、版本、許可證和依賴。(實際上,你不可以發布一個不包括 package.json 的程序包 - 但你仍然應該有一個這樣的文件如果你構建的是一個應用而非一個庫)。
最容易的方式去創建一個項目是在項文件夾里去執行 `npm init` 及跟著提示去做。
打開 package.json 并找到(創建) `scripts` 部份, 添加 `build` 鍵值:
```js
{
...,
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "rollup -c"
},
...
}
```
(這里假設你已經有一個 `rollup.config.js` 文件在項目文件夾里了)。
### 本地安裝Rollup
直到現在,我們已經使用了全局安裝的 Rollup. 但使用 *本地* 安裝的會更好,因為這樣任何人克隆你的項目和運行 `npm install` 將會得到一個兼容的版本。
執行以下的命令...
```bash
npm install --save-dev rollup # or `npm i -D rollup`
```
...你會留意到 `devDependencies` 部份被添加到你項目的 package.json 文件中:
```js
{
...,
"devDependencies": {
"rollup": "^0.41.4"
},
...
}
```
你所有的 `npm run` 腳本都將會尋找本地安裝的命令,如 `rollup` 若它們存在的話。
嘗試運行腳本:
```bash
npm run build
```
### 當文件更新,用`npm run dev` 重新構建
通過安裝 [rollup-watch](https://github.com/rollup/rollup-watch), 你可以創建一個腳本,當它的源文件改變的時候,它會自動重新構建:
```bash
npm install --save-dev rollup-watch
```
```js
{
...,
"scripts": {
"test": "echo \"Error: no test specified\" && exit 1",
"build": "rollup -c",
"dev": "rollup -c -w"
},
...
}
```
命令 `rollup -c -w` (是 `rollup --config --watch` 的簡寫) 讓 Rollup 在監視模式下運行。
***
> 原文:https://rollupjs.org/#npm-run-build