[JavaScript]Node.js+expressをyarn v3で始める


タスクリスト

  1. 初期化
  2. インストール
  3. package.json修正
  4. Hello World
  5. 起動

初期化

corepack enable

https://yarnpkg.com/getting-started/install#nodejs-1610

corepackはNode.jsのバージョンによってはインストールが必要。

yarn init -2

https://yarnpkg.com/getting-started/install#initializing-your-project

yarn init -2はyarn v3環境構築コマンドでpackage.jsonも含めて初期化。何も考えずに、既存プロジェクトで使っては駄目なやつ。
yarn initは旧バージョンなら対話式で修正できるようだけど、v3環境ではpackage.jsonを含めて綺麗に飛ばすだけ。

インストール

yarn install

パッケージをダウンロードして、キャッシュとして.yarn/cacheに格納される。
公式ではコミット対象にしているけど、コミット対象外で。
yarn installすれば良いだけ。

express追加

yarn add express

https://expressjs.com/ja/starter/installing.html

公式はnpmを使ったインストールなので、yarnに読み替える必要あり。

package.json修正

{
  "name": "sample",
  "packageManager": "yarn@3.2.1",
  "scripts": {
    "start": "node src/index.js"
  },
  "dependencies": {
    "express": "^4.18.1"
  },
  "devDependencies": {
    "jest": "^28.1.3"
  }
}

Hello World

https://expressjs.com/ja/starter/hello-world.html

起動

yarn run start

サンプルは動く、node_modulesは生成されない。
yarn側のキャッシュで動いているから、当然か…。

一度動かせれば問題なく行けるようになると思うけど、新旧バージョンがごちゃ混ぜになると「npm installしないと動かない!yarnの意味が!」状態になるので、移行作業は慎重に。