Language-tools: "Impossible de trouver l'un des modules: sass, node-sass" bien que `sass` soit installé

Créé le 19 oct. 2020  ·  4Commentaires  ·  Source: sveltejs/language-tools

Décrivez le bogue
Sur chaque fichier .svelte, l'extension me renvoie cette erreur (copiée à partir de l'onglet Sortie):

Using Svelte v3.29.0 from /Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler
Preprocessing failed
Error: Cannot find any of modules: sass,node-sass

Error: Cannot find module 'node-sass'
Require stack:
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/modules/utils.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/index.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/importPackage.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/configLoader.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/Document.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/lib/documents/index.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/server.js
- /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/bin/server.js
    at Object.importAny (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/modules/utils.js:30:15)
    at async transformer (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/transformers/scss.js:18:21)
    at async /Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js:96:29
    at async Object.style (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-preprocess/dist/autoProcess.js:142:33)
    at async wrappedPreprocessor.style (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/plugins/svelte/SvelteDocument.js:208:33)
    at async /Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27431:32
    at async Promise.all (index 0)
    at async replace_async (/Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27386:52)
    at async Object.preprocess (/Users/nick/PROJECT_ROOT_REDACTED/node_modules/svelte/compiler.js:27427:19)
    at async transpile (/Users/nick/.vscode/extensions/svelte.svelte-vscode-102.2.0/node_modules/svelte-language-server/dist/src/plugins/svelte/SvelteDocument.js:223:25) {
  __source: 'Style'
}

J'ai installé svelte-preprocess et ses paramètres sont dans svelte.config.js qui ressemble à ceci:

// svelte.config.js
const sveltePreprocess = require('svelte-preprocess');

module.exports = {
  preprocess: sveltePreprocess({
    postcss: {
      plugins: [
        require('autoprefixer')
      ]
    },
    sass: {
      sync: true,
      implementation: require('sass'),
    },
  }),
};

J'ai essayé de supprimer implementation et cela n'a pas fonctionné. Cela ne fonctionne pas non plus lors de la définition de sass: true . Je n'ai pas essayé d'utiliser node-sass car j'ai spécifiquement besoin de l'implémentation Dart.

L'erreur apparaît même dans les endroits sans code scss (voir capture d'écran)

Reproduire
Étapes pour reproduire le comportement:

  1. Installez svelte-preprocess et sass
  2. Configurez svelte.config.js en définissant le sass.implementation sur `require ('sass')
  3. Ouvrez n'importe quel fichier .svelte

Comportement prévisible

  1. L'extension ne lance pas d'erreurs

Captures d'écran
grafik

Système (veuillez compléter les informations suivantes):

  • Système d'exploitation: macOS Catalina 10.15.7
  • IDE: VSCode 1.50.1
  • Plugin / Package: "Svelte for VSCode"

Contexte supplémentaire
Je développe une application Sapper, pas seulement Svelte.

question

Commentaire le plus utile

D'accord, je me sens très stupide 😅

Bien que j'aie vérifié avant, j'ai manqué l'ancienne extension de James Birtles qui était toujours installée. Lors de la suppression de l'ancienne extension et du rechargement de VSCode, le message a disparu

Tous les 4 commentaires

D'accord, je me sens très stupide 😅

Bien que j'aie vérifié avant, j'ai manqué l'ancienne extension de James Birtles qui était toujours installée. Lors de la suppression de l'ancienne extension et du rechargement de VSCode, le message a disparu

L'extension mentionnée ci-dessus est Svelte pour VS Code .

D'accord, je me sens très stupide 😅

Bien que j'aie vérifié avant, j'ai manqué l'ancienne extension de James Birtles qui était toujours installée. Lors de la suppression de l'ancienne extension et du rechargement de VSCode, le message a disparu

Et quelle extension utiliser à la place de ça?

Cette page vous a été utile?
0 / 5 - 0 notes