gulpのwatch機能を使って、監視ファイルに変更があった時にタスクを実行する

以前gulpのインストールと、Sassをコンパイルするための最低限の設定を行いました。
今回はそれに引き続き、ファイルを監視してSassが更新されたら自動でコンパイルするタスクを作成してみます。
やりたいこと
今回やりたい事としては下記の通り。
- .scssファイルが更新された時に、sassタスクを実行する
- タスク名はwatchとする
- デフォルトタスクにwatchタスクを登録する
デフォルトタスクにそのままファイルを監視する処理を書いてもいいのですが、今回はファイル監視を目的とするwatchタスクを作成して、それをデフォルトタスクでも読み込むようにしてみます。
タスクの作成
watchタスクの作成
昔はgulp-watchというプラグインを別途インストールして読み込む必要があったのですが、今はgulpに入っているため、インストールの必要はありません。
使い方は下記の通り。
gulp.watch('監視するファイル', 処理)実際にタスクを組み込む際は下記のようになります(少し冗長ですが)。
//プラグインの読み込み
const gulp = require('gulp');
const sass = require('gulp-sass');
//タスクの設定(定義)
//タスク1 - Sassのコンパイル
gulp.task('sass', () => {
return gulp.src('assets/scss/style.scss')
.pipe(sass({
outputStyle: 'compact' //通常の見た目にしたい場合はexpanded
}))
.pipe(gulp.dest('./'));
});
//タスク2 - ファイルを監視する(ファイルに変更があれば、タスク1を行う)
gulp.task('watch', () => {
gulp.watch('assets/scss/**/*.scss', gulp.series(['sass']));
});
//デフォルトタスクに、タスク2を設定
gulp.task('default', gulp.series(['watch'], () => {
}));これでgulpを動かすと、監視ファイルに変更があった際に、自動でタスクが実行されます。
終了したい時はターミナルでcontrol + Cを押せば終了できます。


疑似クラスの:hoverと:activeのスマホでの挙動の違い
Visual Studio Codeでコメントを色分けして管理する「Better Comments」
gzip圧縮をしてウェブサイトの表示スピードを上げる方法
SourceTreeでBacklogのGitを使うときに、権限エラーになってしまう場合の解決法
Vue CLIのプロジェクト管理用のGUI機能から環境を構築する
TwitterとFacebook用のOGP設定方法と表示確認方法
コードスニペットの管理方法や命名規則について
Visual Studio CodeからFTPソフトのTransmitを使用する拡張機能「Transmit」
属性・Class・IdなどHTMLタグの細かい部分を見ていこう!!
Visual Studio Codeの拡張機能「Trailing Spaces」でコードの中にある余計なスペースを表示する
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
ウェブサイトをmacOSアプリとしてラッピングする「Unite Pro」
Keyboard Maestroの「Macro Debugger」で複雑なマクロのデバッグを行う方法
無料版でも高機能なランチャーアプリ「Raycast」の基本機能と環境設定
OnyXでターミナルを使わずにmacOSの詳細設定を行う
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする
超軽量なコードエディタ 「Zed」をサブエディタとして活用する
Bartender 6で追加されたWidgets機能で自作メニューバーアイテムを簡単に作成する
Googleカレンダーを便利に活用するための小技集(祝日だけを表示・月末の繰り返しイベントを追加)