みかづきブログ・カスタム

基本的にはちょちょいのほいです。

Module build failed (from ./node_modules/sass-loader/dist/cjs.js): TypeError: this.getOptions is not a function at Object.loader を解決する 🚨

f:id:kimizuka:20200811145835p:plain

久しぶりにNuxt.jsでプロジェクトを作成したところ、sass-loaderがエラーを吐きました。

Module build failed (from ./node_modules/sass-loader/dist/cjs.js): TypeError: this.getOptions is not a function at Object.loader

Nuxt.js(2.15.7)とsass-loader(12.1.0)の併用です。

調査をしたところ、sass-loaderのバージョンを下げれば解決するとの情報を得たので、ひとつずつ下げながら検証したところ、10.2.0でエラーが消えました。

なので、

"devDependencies": {
  "sass-loader": "^10.2.0"
}

という形でバージョンを固定して解決しました。

公式ドキュメントを確認すると、

yarn add -D sass sass-loader@10 fibers

と、バージョンを10にして導入しているので、10をいれると良いのだと思います。
また、fibersを入れるとsassのコンパイルが倍速なるということなので、ついでに導入しておきました。