2021.10.09

Node.js

gulp-sass 5.0について

2021年7月にgulp-sassのメジャーバージョンが4から5にアップデートされました。gulp-sass 5.0の動作要件はnode.jsバージョン12以上、gulp4です。

node.jsのバージョンは以下のコマンドで確認できます。バージョン12以上が表示されれば問題ありません。

node -v
v14.15.0

gulp及びgulp-sassのバージョンはpackage.json内のdependenciesフィールドに記述があります。gulpのバージョンが4であれば問題ありません。

"dependencies": {
  "gulp": "^4.0.2",
  "gulp-sass": "^5.0.0"
}

この状態でgulpを起動します。

npx 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:

  var sass = require('gulp-sass')(require('sass'));

gulp-sass 5.0はこれまでの4系と違い、コンパイラにsass(Dart Sass)かnode-sass(LibSass)が必要です。

node-sassはサポートされているものの2020年10月に非推奨となり、今後は新機能が追加されないことが決定しています。そこで、ここではsassをインストールします。

npm install sass

次にエラーメッセージに記述されている通り、gulpfile.jsのgulp-sass読み込み部分でsassも読み込むように変更します。

//gulpfile.js

//変更前
const sass = require('gulp-sass');
↓
//変更後
const sass = require('gulp-sass')(require('sass'));

この状態でgulpを起動するとgulp-sass 5.0が正常に動作します。

なおgulp-sassインストール時に4系のバージョンを指定してインストールすれば、sassのインストールとgulpfile.jsの変更をせずにgulp-sassが使用できます。以下はgulp-sass 4.1.0をインストールしています。

npm install gulp-sass@4.1.0

関連記事

2021.01.11

Node.js

パッケージのバージョン指定インストールとpackage-lock.json

パッケージインストール時にパッケージ名の後に@を付けると、パッケージのバージョンの指定ができます。以下はjqueryのバージョン3.4.1インストール時の指定で…

2021.03.21

Node.js

gulp-postcssでpostcss-sortingを実行

gulp-postcssはgulp上でPostCSSが実行できます。postcss-sortingはPostCSSのプラグインで、CSSプロパティの記述順を並べ…

2021.03.10

Node.js

npm run-scriptでgulpを実行

ローカルにインストールしたnpmパッケージの実行は、npxコマンドを利用するのが簡単です。以下のgulpfile.jsでテストします。各タスクのfunction…

2021.03.16

Node.js

gulp-sass-globでパーシャルファイルを読み込み

sassコンパイル時、コンポーネントごとに細分化されたパーシャルファイルは、読み込み元のscssファイルから@importを利用して読み込みます。以下の例ではl…

2021.03.16

Node.js

gulp-sassの実行

gulpでsassをコンパイルします。まずnpm initでpackage.jsonを作成し、gulpとgulp-sassをインストールします。npm inst…

上に戻る