Eu recebo o aviso ...
O suporte experimental para decoradores é um recurso que está sujeito a alterações em uma versão futura. Defina a opção 'experimentalDecorators' para remover este aviso.
... mesmo que minhas opções de compilação no tsconfig.json tenham as seguintes configurações:
"emitDecoratorMetadata": true,
"experimentalDecorators": true,
O que é estranho é que algumas classes aleatórias que usam decoradores não mostram esse aviso, mas o restante no mesmo projeto.
O que poderia causar esse comportamento no compilador TypeScript?
.ts
arquivo manualmente a um projeto angular; Nesse caso, a compilação TS padrão está em conflito com a CLI angular. Clique com o botão direito do mouse no arquivo -> Propriedades -> Ação de Construção: Nenhuma. Em seguida, reinicie o VS, se necessário.code .
) no diretório errado. Tudo parecia bom - eu vi e consegui editar todos os meus arquivos - então, a princípio, não percebi que havia algo "errado". Mas recebi aquele aviso estúpido de "decoradores experimentais" em um - e apenas um! - componente angular. Saí do VSCode, reiniciei (code .
novamente) no diretório CORRETO (minha raiz do projeto Angular) .. e o aviso desapareceu.Respostas:
Embora o VS Code seja um ótimo editor para projetos TypeScript, ele precisa de um pontapé de vez em quando. Freqüentemente, sem aviso, certos arquivos fazem com que surte e se queixe. Principalmente, a correção parece ser salvar e fechar todos os arquivos abertos e, em seguida, abrir
tsconfig.json
. Depois disso, você poderá abrir novamente o arquivo incorreto sem erros. Se não funcionar, ensaboar, enxaguar e repetir.Se você
tsconfig.json
especificar seus arquivos de origem usando afiles
matriz, o IntelliSense funcionará corretamente apenas se o arquivo em questão for referenciado, para que o VS Code possa encontrá-lo percorrendo a árvore de arquivos de entrada.Edit: O comando 'reload window' (adicionado anos atrás agora) deve resolver esse problema de uma vez por todas.
fonte
xproj
etsconfig
, perdi o fato de a pasta com meus arquivos de script estar listada naexclude
seçãotsconfig
. Espero que isso ajude alguém.Eu tenho que adicionar o seguinte no arquivo settings.json do vscode para remover o aviso.
"javascript.implicitProjectConfig.experimentalDecorators": true
VSCode -> Preferências -> Configurações
fonte
ctrl + ,
tecla de atalho para abrir as configurações do usuário. em usersettings clique 3 pontos (...
), em seguida, no pop-up cliqueOpen settings.json
para abertosettings.json
Este erro também ocorre quando você escolhe a pasta "src" para a pasta da área de trabalho.
Quando a pasta raiz, a pasta em que estão localizados o "src", "node_modules", o erro desaparece
fonte
Arquivo -> Preferências -> Configurações
fonte
dentro do seu projeto, crie o arquivo tsconfig.json e adicione estas linhas
fonte
tem que adicionar
typescript.tsdk
ao meu.vscode/settings.json
:fonte
.vscode/settings.json
como por este.vscode
pasta (não sei por que - eu sou um desenvolvedor de back-end, deixe-me em paz!), Então criei um na pasta raiz com o referidosettings.json
arquivo.No VSCode, vá para Arquivo => Preferências => Configurações (ou Control + vírgula) e ele abrirá o arquivo Configurações do Usuário. Procure "javascript.implicitProjectConfig.experimentalDecorators": true e marque a caixa de seleção experimentalDecorators no arquivo, que deve ser corrigida. Isso fez por mim.
fonte
No Visual Code Studio, vá para Arquivo >> Preferências >> Configurações, pesquise "decorador" no campo de pesquisa e Marque a opção como na imagem.
fonte
Abrir
settings.json
arquivo no seguinte local<project_folder>/.vscode/settings.json
ou você pode abrir o arquivo no menu como mencionado abaixo
VSCode -> File -> Preferences -> Workspace Settings
Em seguida, adicione as seguintes linhas no
settings.json
arquivoIsso é tudo. Você não verá nenhum aviso / erro sobre ' experimentalDecorators '
fonte
Esta resposta é destinada a pessoas que estão usando um projeto Javascript e não a um Typecript . Em vez de um arquivo tsconfig.json, você pode usar um arquivo jsconfig.json .
No caso específico de ter os decoradores avisando, você deve escrever dentro do arquivo:
Para os comportamentos de buggy solicitados, é sempre melhor especificar o "include" no arquivo de configuração e reiniciar o editor. Por exemplo
fonte
Vai resolver esse problema.
fonte
settings.json
(usuário ou espaço de trabalho). Você também pode usar as configurações de GUI, como esta resposta fazAdicione as seguintes linhas no tsconfig.json e reinicie o VS Code.
fonte
Não para enfatizar o ponto, mas certifique-se de adicionar o seguinte a
em Arquivo >> Preferências >> Configurações
"javascript.implicitProjectConfig.experimentalDecorators": true
isso corrigiu o problema para mim e tentei algumas sugestões que encontrei aqui e em outros lugares.
fonte
Recentemente, tive esse problema no Visual Studio 2017 - resultou de um "recurso" do VS - ignorando o tsconfig.json quando a ação Build não está definida como Content .
Portanto, alterar a ação Criar para Conteúdo e recarregar a solução resolveu o problema.
fonte
Por uma questão de clareza e estupidez.
1) Abra .vscode / settings.json.
2) Adicione "typescript.tsdk": "node_modules / typescript / lib" nele.
3) Salve.
4) Reinicie o código do Visual Studio.
fonte
Se você estiver trabalhando no Visual studio. Você pode tentar esta correção
Adicione TypeScriptExperimentalDecorators a esta seção, como mostra a imagem
veja mais detalhes neste local.
fonte
Se você estiver usando cli para compilar arquivos * .ts, poderá definir experimentalDecorators usando o seguinte comando:
fonte
Verifique se você abriu no seu código VS a pasta do projeto inteiro e não apenas a pasta src, porque se você abrir apenas o src, o arquivo ts.config.json (localizado na pasta do projeto) não estará no escopo e O VS não reconhecerá os parâmetros dos decoradores experimentais.
No meu caso, isso corrigiu todos os problemas relacionados a esse problema.
fonte
src
enode_modules
, em vez de selecionar apenassrc
.fonte
Abra a pasta do projeto inteiro em vez do nome do projeto / src
fonte
Corrigi o aviso removendo "baseUrl": "" do arquivo tsconfig.json
fonte
Você pode enfrentar esse problema se abrir um arquivo TS que exista fora do projeto. Por exemplo, estou usando o lerna e tive um arquivo aberto de outro pacote. Embora esse outro pacote tenha seu próprio tsconfig com decoradores experimentais, o VsCode não o honra.
fonte
Eu enfrentei o mesmo problema ao criar um serviço injetável no Angular 2. Eu tenho todas as coisas no tsconfig.json. Ainda estava recebendo esse erro na linha ColorsImmutable.
fonte
Se você estiver usando o tempo de execução Deno JavaScript e TypeScript e ativar experimentalDecorators: true nas configurações ide tsconfig.json ou VSCode. Isso não vai funcionar. De acordo com o requisito do Deno, você precisa fornecer o tsconfig como um sinalizador ao executar um arquivo Deno. Consulte Opções personalizadas do compilador TypeScript
No meu caso particular, eu estava executando um teste de Deno e usado.
Se for um arquivo, você tem algo como
meu tsconfig.json
fonte
Adicionei esta opção ao tsconfig.json,
"baseUrl": "front-end"
Substitua front-end pelo nome do seu projeto angular-cli.fonte
Você também pode tentar com
ng build
. Acabei de reconstruir o aplicativo e agora ele não está em conformidade.fonte
Acontece que você pode contornar isso combinando o nome do seu módulo com o nome do arquivo. Se você tiver o nome do módulo BankSpecialtyModule, o nome do arquivo deverá ser. bank-Specialty.module.ts
fonte
Ocorreu esse erro quando criei um novo módulo e movi meu arquivo * .module.ts e * -routing.module.ts para outra pasta. Depois de excluir os dois arquivos e criar o módulo na nova pasta, ele funciona perfeitamente. Versão Angular do Ambiente 9 e CLI Angular versão 9.1.0
fonte
Para mim, esse erro "Suporte experimental para decoradores é um recurso sujeito a alterações em uma versão futura. (Etc)" só aconteceu no VS Code em um projeto Angular e somente ao criar um novo Serviço.
A solução acima: "No Visual Code Studio, vá para Arquivo >> Preferências >> Configurações, pesquise" decorador "no campo de pesquisa e marque a opção JavaScript› Configuração implícita do projeto: decoradores experimentais "resolveu o problema.
Além disso, interromper o ng servir na janela do terminal e reiniciá-lo fez o erro desaparecer após a recompilação.
fonte