package.json、ESモジュール、npmの依存関係、そしてスクリプトを使って、Nodeプロジェクトを構成しましょう。
このレッスンを Kodokon で開く本物のプロジェクトは一つのファイルには収まりません。モジュール、つまり自分が提供するものをエクスポートし、必要なものをインポートするファイルへと分割します。import / export構文はJavaScript講座ですでに知っていますね。Nodeでそれをどう有効にするかを見ていきましょう。すべてはpackage.json、プロジェクトの身分証明書から始まります。JSON形式のファイルで、その名前、バージョン、設定を記述します。作成するには、空のフォルダに移動してnpm init -yを実行します(-yオプションはすべてのデフォルトの回答を受け入れます)。次に"type": "module"という行を追加します。これはあなたの.jsファイルがESモジュールを使うことをNodeに伝えます。
{
"name": "my-project",
"version": "1.0.0",
"type": "module",
"scripts": {
"start": "node main.js",
"dev": "node --watch main.js"
}
}このフォルダに二つのファイルを作りましょう。math.jsが関数をエクスポートし、main.jsがそれをインポートします。Node特有の細かい点があります。ローカルファイルのインポートは./で始まり、.js拡張子で終わらなければなりません。一部のウェブツールが許してくれるのとは違い、どちらも必須です。
// math.js
export function add(a, b) {
return a + b;
}
// main.js
import { add } from "./math.js";
console.log(add(2, 3));npmの大きな強みは、世界規模のパッケージのライブラリです。他人が書いた、すぐ使えるコードのことです。npm installコマンドはパッケージをプロジェクトのnode_modulesフォルダにダウンロードし、package.jsonのdependenciesセクションに追加します。これはプロジェクトが動くために必要なパッケージのリストです。自動的に作られるpackage-lock.jsonファイルが、インストールされた正確なバージョンを記録するので、誰もが同じものを手に入れられます。chalkで試してみましょう。ターミナルに表示されるテキストに色を付けるパッケージです。
npm install chalk最後の柱です。npmスクリプト、つまりpackage.jsonのscriptsセクションに宣言されたコマンドのショートカットです。npm run devは、本当のコマンドがどれだけ長くても、devという名前で保存されたコマンドを実行します。私たちのdevスクリプトはnode --watchを使っています。ファイルが変わるたびにプログラムを自動的に再起動するオプションで、開発中はとても快適です。
npm run start
npm run dev