gulp-sass 5の「does not have a default Sass compiler」エラーを解消する

少し前に使っていたgulpのファイルで、gulp-sassのバージョンが古かったのでアップデートを行ったところ、下記のエラーが出ました。
Error in plugin "gulp-sass"
Message:
gulp-sass 5 does not have a default Sass compiler; please set one yourself.
Both the `sass` and `node-sass` packages are permitted.
For example, in your gulpfile:訳すと「gulp-sass 5」のバージョンアップに伴うエラーのようです。
「gulp-sass」プラグインのエラー
エラー内容:
「gulp-sass 5」 にはデフォルトのSassコンパイラがないので、自分で設定してください。
パッケージは「sass」と「node-sass」両方使えます。
参考までに、gulpfile.jsでは下記のように記述します。原因
gulp-sassのバージョン5からは、デフォルトのSassコンパイラが含まれなくなったようです。
そのため、別途自分でsassかnode-sassのどちらかをインストールして、gulp-sassと一緒に読み込むように設定が必要になったようです。
gulp-sass version 5 requires Node 12 or later, and introduces some breaking changes. Additionally, changes in Node itself mean that we should no longer use Node fibers to speed up asynchronous rendering with Dart Sass.
Setting a Sass compiler
As of version 5, gulp-sass does not include a default Sass compiler, so you must install one (either node-sass or sass) along with gulp-sass.
翻訳すると下記の通りです。
Sassコンパイラの設定
バージョン5では、gulp-sassにはデフォルトのSassコンパイラが含まれていないので、gulp-sassと一緒に1つ(node-sasかsass)をインストールする必要があります。
gulp-sassバージョン4より前のgulpfileを使用している場合は注意が必要です。
解決方法
まずはsassかnode-sassをインストールします。
npm install sass --save-devnpm install node-sass --save-dev
今まではgulp-sassを読み込んでそのまま使っていました。
// gulp-sass 4以前
const sass = require('gulp-sass');それをsassまたはnode-sassも一緒に読み込むようにします。
// gulp-sass 5(sassの場合)
const sass = require('gulp-sass')(require('sass'));
// gulp-sass 5(node-sassの場合)
const sass = require('gulp-sass')(require('node-sass'));これでコンパイルができるようになりました。


ウェブ上でLaTeXで数式をキレイにプレビューするJavaScriptライブラリ「MathJax」
iTerm2を使いこなすために覚えておきたいショートカット集
Vue CLIのtitleタグやmetaタグの設定方法
EmmetのWrap with Abbreviationで複数行のマークアップを効率的に行う
Vue.jsで値段を表示するときに3桁ごとにカンマを入れる方法
WordPressの自動バックグラウンド更新を無効にする方法とその注意点
思考したり情報整理したい時はMarkdown記法で文章を書き出そう!!Webデザイナーの情報整理術
コードスニペットの管理方法や命名規則について
WordPressで既に公開済みの記事の更新を、指定した日付に反映する方法「PublishPress Revisions」
Visual Studio Codeで複数ファイルを編集するときにタブやペインの操作方法
AirPodsで片耳を外しても再生が止まらないようにする方法
MacのKeynoteにハイライトされた状態でコードを貼り付ける方法
iTerm2でマウスやトラックパッドの操作を設定できる環境設定の「Pointer」タブ
DeepLで「インターネット接続に問題があります」と表示されて翻訳できないときに確認すること
Ulyssesの「第2のエディタ」表示を使って2つのシートを横並びに表示する
ウェブ開発時のテスト環境と本番環境の取り違えを防ぐChrome拡張機能「Environment Marker」
【2026年版】Karabiner-Elementsで実現する右commandキー活用のススメ
Bartender ProのTop Shelf機能でできること
高機能なスクリーンショットアプリ「CleanShot X」
macOSの効率化に関するDiscordコミュニティ「CMD-F」を立ち上げました
1Passwordの開発者向け機能(SSH Agent / Environments / 1Password CLI / Developer Watchtower)
Default Folder Xで保存ダイアログ内のファイルリストにフォーカスする方法
Obsidianで整理した知識をAnkiで定着させる方法
Figma × Keyboard Maestroでどこまで効率化できる?
マウス操作の完成度が高いウインドウリサイズアプリ「Magnet」