Language-tools: "Não é possível encontrar nenhum dos módulos: sass, node-sass" embora `sass` esteja instalado

Criado em 19 out. 2020  ·  4Comentários  ·  Fonte: sveltejs/language-tools

Descreva o bug
Em cada arquivo .svelte, a extensão lança este erro para mim (copiado da guia Output):

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'
}

Tenho svelte-preprocess instalado e suas configurações estão em svelte.config.js que se parece com isto:

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

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

Tentei remover implementation e não funcionou. Também não funciona ao definir sass: true . Não tentei usar node-sass porque preciso especificamente da implementação do Dart.

O erro aparece mesmo em locais sem código scss (veja a captura de tela)

Reproduzir
Passos para reproduzir o comportamento:

  1. Instale svelte-preprocess e sass
  2. Configure svelte.config.js definindo sass.implementation para `require ('sass')
  3. Abra qualquer arquivo .svelte

Comportamento esperado

  1. A extensão não lança erros

Capturas de tela
grafik

Sistema (preencha as seguintes informações):

  • OS: macOS Catalina 10.15.7
  • IDE: VSCode 1.50.1
  • Plugin / pacote: "Svelte para VSCode"

Contexto adicional
Estou desenvolvendo um aplicativo Sapper, não apenas Svelte.

question

Comentários muito úteis

Tudo bem, me sinto muito idiota 😅

Embora eu tenha verificado antes, perdi a antiga extensão de James Birtles que ainda estava instalada. Ao remover a extensão antiga e recarregar o VSCode, a mensagem sumiu

Todos 4 comentários

Tudo bem, me sinto muito idiota 😅

Embora eu tenha verificado antes, perdi a antiga extensão de James Birtles que ainda estava instalada. Ao remover a extensão antiga e recarregar o VSCode, a mensagem sumiu

A extensão referida acima é Svelte para VS Code .

Tudo bem, me sinto muito idiota 😅

Embora eu tenha verificado antes, perdi a antiga extensão de James Birtles que ainda estava instalada. Ao remover a extensão antiga e recarregar o VSCode, a mensagem sumiu

E que extensão usar em vez disso?

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

vatro picture vatro  ·  3Comentários

koddr picture koddr  ·  6Comentários

maximedupre picture maximedupre  ·  5Comentários

brunnerh picture brunnerh  ·  3Comentários

AlexGalays picture AlexGalays  ·  5Comentários