gulp 4.0から新しく加わったseriesとparallelについての備忘録

gulp4.0から新しくseriesとparallelが追加され、タスクの処理の順番を制御することができるようになりました。最初はどういう事かよく分からなかったので、自分用の備忘録としてメモしておきます。
今までのgulpの処理
gulpというのは行う処理を「タスク」という単位で用意して、そのタスクを並列で処理していく事で、処理のスピードを上げていました。
しかし、並列でタスクを処理していくという事はスピードが早くなる反面、処理の順番が選べないという事でもあります。
例えば、「style.scssをstyle.cssにコンパイルする」というタスクと「style.cssを圧縮してstyle.min.cssを作成する」というタスクを並列で処理してしまうと、まだSassをコンパイルしていないのに、先にstyle.cssを圧縮してしまう恐れがあります。
このように、必ずこの順番で処理してほしい場合も出てきます。
それを回避するために、直列処理をするプラグインもありましたが、4系からは並列処理と直列処理を選択するためのseriesとparallelが追加されました。
seriesとparallel
seriesが直列処理で、parallelが並列処理です。
直列処理はタスクを1つずつ順番に処理していくので、順番を明確にしたい時に使用します。逆にparallelは並列処理で、タスクを同時に処理していきます。
それぞれの書き方は下記の通りになります。
gulp.series(タスク名, タスク名); // 直列処理
gulp.parallel(タスク名, タスク名); // 並列処理実際に組み込むと下記のようになります。
gulp.task('default', gulp.series(
gulp.parallel(タスク1, タスク2)
));こうすると、タスク1が終わった後にタスク2が実行されるようになるわけですね(setTimeoutのような遅延処理があったとしても)。

Visual Studio Codeで「.html」拡張子以外のファイルでもEmmetを使えるようにする
TwitterとFacebook用のOGP設定方法と表示確認方法
Vue.jsでtemplateタグ内にscriptやstyleタグを生成する方法|Tags with side effect are ignored
既存プロジェクトにCompassが導入されている場合に備えて、最低限Sassのコンパイルだけでも行えるようにしておく
WordPressのwp_is_mobile()で条件分岐をするときは、キャッシュの設定に注意
Visual Studio Codeで簡易的なローカルサーバーを起動して、コード保存時に自動でブラウザをリロードする拡張機能「Live Server」
全角スペースを可視化してくれるVisual Studio Codeの拡張機能「zenkaku」
Nuxt.jsでVuexストア連携を行う方法|Nuxt.jsの基本
gulp-plumberとgulp-notifyでgulpエラー時にデスクトップで通知がくるようにする
Vue CLIのtitleタグやmetaタグの設定方法
iTerm2で「Use System Window Restoration Setting」を設定しているとアラートが表示されて機能しない
Google Chromeのサイト内検索(カスタム検索)機能を別のプロファイルに移行する方法
iPadで入力モードを切り替えずに数字や記号をすばやく入力する方法
iPhoneやiPadでYouTubeの再生速度を3倍速や4倍速にする方法
Keynoteで有効にしているはずのフォントが表示されない現象
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
AirPodsで片耳を外しても再生が止まらないようにする方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
GitHubの通知を見逃さない!通知に特化したアプリ「Gitify」
Keyboard Maestroの変数基礎
Neovimを使い始める最初の一歩として便利な「LazyVim」
ウェブサイトをmacOSアプリとしてラッピングする「Unite Pro」
Keyboard Maestroの「Macro Debugger」で複雑なマクロのデバッグを行う方法
無料版でも高機能なランチャーアプリ「Raycast」の基本機能と環境設定
OnyXでターミナルを使わずにmacOSの詳細設定を行う
軽量で高速なターミナルエミュレーター「Ghostty」の設定方法
Eagleで実現するクリエイティブ素材の簡単管理
かゆいところに手が届く「Supercharge」でMac環境を便利にカスタマイズする