LoginSignup
0
0

公式のブログ記事の中で、「Running package.json scripts」という項目で以下のように紹介されていた node --run <script-in-package-json> という形式で package.json scripts を実行するというものを試してみます。

●Node.js — Node.js 22 is now available!
 https://nodejs.org/en/blog/announcements/v22-release-announce#running-packagejson-scripts

image.png

上記以外に、以下の記事でも紹介がされていたりします。

●Node.js v22の主な変更点 - 別にしんどくないブログ
 https://shisama.hatenablog.com/entry/2024/05/13/083000

image.png

これまでのやり方

これまでも npmコマンドを使った方法はありました。
例えば、以下の記事に書かれたようなことができます。

●scripts | npm Docs
 https://docs.npmjs.com/cli/v10/using-npm/scripts

image.png

●Node.jsユーザーなら押さえておきたいnpm-scriptsのタスク実行方法まとめ - ICS MEDIA
 https://ics.media/entry/12226/

実際に試してみる

それでは、Node.js v22 の新機能を使ったお試しです。

package.json の中に scripts として、以下の内容を追加します。

  "scripts": {
    "ws": "npx wscat -l 8080"
  }

ここで使っているコマンドは、以前、以下の記事で書いていた内容の一部を流用しています。

●WebSocket のサーバー・クライアントをコマンドラインで簡単に実行する(npx と wscat) - Qiita
 https://qiita.com/youtoy/items/72bbd5f6b0893756da36

以下のコマンドを実行することで、WebSocketサーバーを一時的に用意できるようになります。

$ node --run ws

上記を実行した後、以下の記事で書いていた WebSocketクライアントのプログラムを実行してみます。

●Node.js と ws でシンプルな WebSocketサーバー + Node.js v22 でフラグなしで使える WebSocket - Qiita
 https://qiita.com/youtoy/items/9e1eeae728dc98f15679

その結果、以下のように WebSocket を使った通信を行えたことが確認できました。

image.png

現状、 node --run を使うと「ExperimentalWarning: Task runner is an experimental feature and might change at any time」という Warning がでる状況のようです。

npm run を使った場合

以下のコマンドでサーバー側を用意した場合も試してみて、その結果を掲載しておきます。

$ npm run ws

image.png

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0