# sass-loader エラー
Module build failed (from ./node_modules/sass-loader/dist/cjs.js): TypeError: this.getOptions is not a function at Object.loader (/Users/xxx/Documents/xxx/node_modules/sass-loader/dist/index.js:25:24)
# 解決策 1 sass-loader のバージョンが 8 以上でエラーになる
npm uninstall --save-dev sass-loader
npm install --save-dev sass-loader@7
# 解決策 2 node_module 削除してインストール
rm -rf node_modules && rm package-lock.json
npm cache clear --force && npm cache clean --force
npm install
# Node-sass エラー
Module build failed (from ./node_modules/sass-loader/dist/cjs.js): friendly-errors 19:58:32
Error: Node Sass version 5.0.0 is incompatible with ^4.0.0.
npm uninstall node-sass
npm install node-sass@4
# 結論
Node-sass は Nodejs のバージョンに依存していて、Nodejs のバージョンが合わないと node-sass や sass-loader がエラーを起こしているようで、バージョン下げるとなおりました。
node-sass (opens new window)
sass-loader (opens new window)
| Nodejs ver | node-sass ver | Node Module |
|---|---|---|
| Node 15 | 5.0+ | 88 |
| Node 14 | 4.14+ | 83 |
| Node 13 | 4.13+, <5.0 | 79 |
| Node 12 | 4.12+ | 72 |
| Node 11 | 4.10+, <5.0 | 67 |
| Node 10 | 4.9+ | 64 |
| Node 8 | 4.5.3+, <5.0 | 57 |
| Node <8 | <5.0 | <57 |
Sass について
ウィキペディア Sass (opens new window)
Sass のメリット いいところ
- コードが少ない
- コードが管理しやすい
- 変数使える
- 使い回しの型を定義できる
- 条件分岐できる
Sass のデメリット 欠点
- 環境を用意する必要がある
- バージョンエラー発生することがある
Sass から css に変換するツール