Language-tools: VS Code exibe um erro na anotação de tipo

Criado em 20 mai. 2020  ·  5Comentários  ·  Fonte: sveltejs/language-tools

Tenho a extensão Svelte Beta instalada e reiniciei o servidor de idiomas. Meu svelte.config.js é:

const sveltePreprocess = require('svelte-preprocess');

module.exports = {
    preprocess: sveltePreprocess(),
};

No entanto, a extensão não parece ajudar o VS Code a entender que meu código é Typescript, uma vez que dá um erro na anotação de tipo:

As anotações de tipo só podem ser usadas em arquivos TypeScript. javascript

Screen Shot 2020-05-19 at 8 24 24 PM

Também interessante, se eu mudar lang="typescript" para type="text/typescript" , as cores da sintaxe desaparecerão completamente, assim como o erro:

Screen Shot 2020-05-19 at 8 26 22 PM

Sistema (preencha as seguintes informações):

  • SO: macOS Catalina 10.15.4
  • IDE: Código VS
  • Plugin: Svelte Beta
bug

Comentários muito úteis

Ah, então o problema era porque eu tinha isso nas configurações de "Usuário" do meu código VS:

  "files.associations": {
    "*.svelte": "html"
  },

Agora que o removi, tudo parece funcionar bem.

Todos 5 comentários

Você pode postar o código do arquivo inteiro aqui ou um repositório de exemplo? Eu não consigo reproduzi-lo. Não precisa incluir todo o script, mas precisa de outras tags de nível superior

Aqui está uma reprodução mínima:

<script lang="typescript">
    let countExcludingUser: number = 0;
</script>

<p>Hi</p>

Screen Shot 2020-05-19 at 8 53 22 PM

Desativei todas as extensões, exceto Svelte Beta e reiniciei o VS Code, sem sucesso.

Só consegui reproduzir uma vez e sem sorte depois disso. Você pode tentar novamente na versão mais recente 99.0.22? Há alguma atualização sobre o pré-processamento nesta versão. Se ainda persistir, você pode fazer um repositório de exemplo?

Pela sua descrição, parece que SveltePlugin.ts entende que deveria ser pré-processado com Typescript porque não há erro de sintaxe Svelte como "token inesperado". Por outro lado, TypescriptPlugin.ts - por algum motivo - não reconhece que você usa Typescript, mas pensa que é Javascript. Muito estranho .. Um exemplo de repo certamente ajudaria.

Ah, então o problema era porque eu tinha isso nas configurações de "Usuário" do meu código VS:

  "files.associations": {
    "*.svelte": "html"
  },

Agora que o removi, tudo parece funcionar bem.

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