自分で vue をビルドしたところ、「Module build failed: TypeError: this.getOptions is not a function.」というエラーが発生しました。オンライン検索の結果によると、その理由は、node-sass のバージョンが sass のバージョンと一致していないためであるはずです。 -ローダ。解決プロセスを記録します。
1. まずエラーメッセージを見てください。
2. インストールしたノードのバージョンを確認します。
ctrl+R、cmdと入力してターミナルを開き、次のコマンドを入力します
node -v
私自身のノードのバージョンは 14.17.4 なので、インストールされているノードのバージョンに応じて、対応するノード Sass バージョンをインストールする必要があります。
3.nodeとnode-sassの対応バージョン
公式 Web サイトには、バージョンに対応する表が用意されています: https://www.npmjs.com/package/node-sass
公式 Web サイトをクリックするのが面倒な場合は、以下の表を直接見ることができます。
NodeJsのバージョン | サポートされているノード Sass バージョン |
---|---|
ノード17 | 7.0+ |
ノード16 | 6.0以上 |
ノード15 | 5.0+、<7.0 |
ノード14 | 4.14+ |
ノード13 | 4.13+、<5.0 |
ノード12 | 4.12+ |
ノード11 | 4.10+、<5.0 |
ノード10 | 4.9+、<6.0 |
ノード8 | 4.5.3+、<5.0 |
ノード<8 | <5.0 |
node14 に対応するバージョンはバージョン番号 4.14+ であることが確認できるため、次のコマンドを直接実行します。
npm i [email protected] --save
4. 対応する sass-loader のバージョン番号
インストール後もエラーが解決しないので、対応するバージョンの sass-loader もインストールする必要がありますが、ネットで調べて整理しました。
ノードサスのバージョン | Sassローダーのバージョン |
---|---|
4.3.0 | 4.1.1 |
4.7.2 | 7.0.3 |
4.7.2 | 7.3.1 |
4.14.1 | 7.3.1 |
6.0.1 | 10.0.1 |
私は自分で node-sass の 4.14 バージョンをインストールしたので、対応する 7.3.1 バージョンの sass-loader をインストールし、次の手順を実行してインストールしました。
npm i [email protected] --save
5. まとめ
まとめると、nodeのバージョンに合わせたnode-sassとsass-loaderをインストールする必要があり、最新バージョンを使用している場合は、次の手順を実行するだけです。
npm insatall node-sass sass-loader --save
或
npm insatall node-sass sass-loader --save-dev
ここでの –save-dev と –save の違いは、devDependency または package.json にダウンロードされる依存関係のみです。この 2 つの違いは、前者はローカル環境で使用される依存関係であり、後者はローカル環境で必要な依存関係であることです。開発環境。ローカルで開発する場合は、-save-dev だけを実行します。
不正確な点がある場合は、批判して修正してください~
—————————————
著作権に関する声明: この記事は CSDN ブロガー「YOGiii」によるオリジナルの記事であり、CC 4.0 BY-SA の著作権に従います。に同意し、転載する場合は、元のソースリンクとこの声明を添付してください。
元のリンク: https://blog.csdn.net/August_802/article/details/124985920