arrow-right hamburger logo-mark social-facebook social-github social-twitter
2016.12.26

Node.jsでファイル監視を行うchokidarを使ってみよう

のびすけ

Node.js Magazine

こんにちは、dotstudio代表ののびすけです。

Node.jsでコマンドラインツール作るときに使いやすいreadline-syncに続いて、Node.jsのモジュール紹介です。

Gitなどを用いて開発を行っていると「ファイルの変更を検知して何かを実行したい」という場面があります。 今日はそんな場面で活用できるファイル監視を行うモジュールを紹介します。

執筆時点のマシンスペック

何か不具合があったときに参照してください。

インストール

URL: chokidar

npm initpackage.jsonを作成してから進めます。

npm init --yes
npm i --save chokidar

サンプルを動かしてみる

ファイル監視

app.jsを作成します。

const chokidar = require('chokidar');

// One-liner for current directory, ignores .dotfiles
chokidar.watch('.', {ignored: /[\/\\]\./}).on('all', (event, path) => {
  console.log(event, path);
});

app.jsを保存したらアプリケーションを起動しましょう。

node app

これで、nodeコマンドを実行したディレクトリ以下のファイルを監視しはじめます。

先ほど実行したnpm init --yespackage.jsonが作成されます。app.jsを実行したままpackage.jsonを編集してみましょう。

このように、変更があったファイルを検知してくれます。

・
・
・
change package.json

おわりに

chokidarを使ってファイル監視して「特定のファイルが更新されたら〇〇する」というトリガーを簡単に作れます。

プロジェクト管理などで活用してみてください。

それでは。