348 votes

TypeError : this.getOptions n'est pas une fonction

Je suis confronté à une erreur bizarre lorsque j'ai installé Bootstrap . L'erreur est la suivante. J'ai essayé de désinstaller less-loader et d'installer less-loader@5.0.0, parce que je l'ai vu en ligne, mais cela n'a rien donné. Je ne suis pas sûr de ce qu'il faut faire à cette étape.

Erreur de syntaxe : TypeError : this.getOptions n'est pas une fonction

 @ ./node_modules/vue-style-loader??ref--8-oneOf-1-0!./node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!./node_modules/vue-loader-v16/dist/stylePostLoader.js!./node_modules/postcss-loader/src??ref--8-oneOf-1-2!./node_modules/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader-v16/dist??ref--0-1!./src/App.vue?vue&type=style&index=0&id=7ba5bd90&lang=scss 4:14-419 14:3-18:5 15:22-427
 @ ./src/App.vue?vue&type=style&index=0&id=7ba5bd90&lang=scss
 @ ./src/App.vue
 @ ./src/main.js
 @ multi (webpack)-dev-server/client?http://192.168.1.182:8080&sockPath=/sockjs-node (webpack)/hot/dev-server.js ./src/main.js

2 votes

Ce serait formidable si vous pouviez ajouter les étapes à suivre pour reproduire le problème.

698voto

D_Pain Points 4083

Similaire à ce que @KostDM a dit, dans mon cas, il semble que sass-loader@11.0.0 ne fonctionne pas avec vue@2.6.12 .

J'ai installé sass-loader@10.1.1 et ça a marché comme un charme à nouveau.

Dans votre package.json :

"sass-loader": "^10",

94 votes

La v11 ne fonctionne pas avec Vue car la v11 nécessite Webpack v5 ->. github.com/webpack-contrib/sass-loader/releases/tag/v11.0.0

22 votes

Cela ne fonctionne toujours pas pour moi et j'utilise Vue 3.

4 votes

@TiletiSaiTejaReddy Essayez simplement de mettre à niveau votre sass-loader en changeant la version dans votre package.json en 10.1.1 et exécutez npm install. Essayez de redémarrer le serveur à nouveau. Cela a fonctionné pour moi.

102voto

itacode Points 1711

J'ai eu le même problème résolu en mettant à niveau sass-loader vers 10.1.1. J'utilise @vue/cli 4.5.8 qui inclut webpack@4.46.0.

À partir de la v11.0.0 de sass-loader et de la v8.0.0 de less-loader, l'option

la version minimale supportée de webpack est 5

60voto

Freestyle09 Points 772

La mise à niveau de sass-loader vers ^10.0.0 a fonctionné pour moi, mais sur une nouvelle version de Nuxt.js Application CLI avec laquelle j'ai dû également installer Sass :

npm i sass

Pour rétrograder, vous pouvez supprimer le node_modules et pour l'ajouter, exécutez ceci dans votre terminal :

npm i sass-loader@10 

Ceci installera la dernière version 10 de sass-loader.

Et après tout, installez à nouveau toutes les dépendances :

npm i

38voto

Pour moi, la mise à jour de postcss-loader m'a aidé.

+ "postcss-loader": "^4.2.0",
- "postcss-loader": "^5.0.0",

1 votes

Cela a réglé mon problème, merci Daniel !

0 votes

Même chose ici, en utilisant sass-loader également

30voto

Nuttapong Sarkana Points 329

Hier, j'ai découvert un problème après avoir mis à jour sass-loader à la dernière version.

Si vous utilisez yarn, vous pouvez rétrograder sass-loader. Utilisez yarn add sass-loader@^10.1.1 ça marche.

1 votes

J'ai résolu mon problème dans une application Rails 6.0.1. J'ajoute mon commentaire ici car la syntaxe de la console ici est celle que l'on utilise "normalement" pour une application Rails récente. Merci @D_Pain. Je n'utilise pas Vue BTW, mais j'ai dû mettre à jour des modules de nœuds et causer un problème. Principalement, Bootstrap n'a pas fonctionné.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X