import console = require("console");
console.
<< eu digito. e acima é importado automaticamente no VScode. Alguém sabe como desativar isso?
(Presumo que seja uma das minhas extensões. Provavelmente mais bonita.)
editar: isso só acontece no ambiente React Typcript. não no texto datilografado sem reagir.
typescript
visual-studio-code
alma de dragão
fonte
fonte
Respostas:
Isenção de responsabilidade: isso não deve ser considerado "a solução", mas é o mais simples / rápido.
Esta resposta está assumindo que você está usando o VSCode. Outros IDEs devem ser semelhantes.
console
.
, permitindo que o IntelliSense adicioneimport console = require("console");
require("console")
fonte
"console"
entanto, mas isso é um detalhe. Obrigado!Eu experimentei isso também e parece haver um problema com o recurso Auto Import no VSCode. Desativar todas as extensões também não parece fazer com que ela desapareça.
Como solução alternativa, você pode desativar as importações automáticas nas configurações.
Se você usa Javascript
"javascript.suggest.autoImports": false
Se você usa o Typecript
"typescript.suggest.autoImports": false
EDIT: A importação automática defeituosa ocorre devido a este código em um pacote na árvore de dependência
O pacote pode estar localizado no diretório node_modules local ou em um pacote referenciado instalado globalmente.
declare module "console"
npm list [packageName]
para determinar qual pacote no package.json depende do pacote com o código do console.Se você não encontrar código no node_modules local, poderá
Eliminar os pacotes um por um no package.json
Procure o código do console em módulos instalados globalmente que podem ser referenciados por pacotes no seu projeto
% USERPROFILE% \ AppData \ Roaming \ npm \ node_modules% USERPROFILE% \ AppData \ Local \ Microsoft \ TypeScript
Sei que não é uma solução direta, mas espero que ajude, no meu caso, tive uma referência do nó react-native-copilot -> rimraf -> que continha o código do console. A remoção do react-native-copilot resolveu o problema.
fonte
~/Library/Caches/
pasta. Eu estou em um mac. Como está no meu espaço de trabalho em cache, apenas removi o código real: `` `lang-js declare module" console "{export = console; } `` `E funcionou!A solução mais elegante que encontrei é criar um
console.d.ts
arquivo fictício em algum lugar do seu projeto:Isso impedirá a importação automática.
Créditos: https://github.com/Microsoft/TypeScript/issues/30471#issuecomment-474963436
fonte
Se você adicionar um snippet para inserção
console.log
e usá-lo, não haverá importação automática de "console"https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets
aqui está o meu trecho:
fonte
Se você gosta de mim, esquece "cl", pode usar vários prefixos nos trechos :)
fonte
Uma maneira de impedir que isso aconteça é modificar o arquivo tsconfig.json para limitar o conjunto de tipos que são importados automaticamente para o seu projeto.
Eu tive esse mesmo problema e o corrigi adicionando:
types: []
no meu arquivo tsconfig.json. O que isso faz é desativar o TypeScript (e por extensão VSCode) de importar automaticamente todos os pacotes de nós existentes
@types/
na configuração do projeto. Isso não impede que o TS importe essas definições de tipo se você importar explicitamente um pacote usando esses tipos.No meu caso específico,
console
vinha a definição@types/node
, que havia sido importada para o projeto como uma dependência do Storybook. No entanto, meu projeto era um webpack, destinado a ser executado em um navegador; portanto, importar tipos Node.js para o meu código-fonte não fazia sentido. O conjunto básico de tipos que você deseja usar em um navegador são tipos dom, não tipos de nós.Dependendo do seu projeto, talvez seja necessário adicionar explicitamente o conjunto de pacotes do tipo base ao parâmetro types (
types: ["dom", "react"]
e assim por diante). No entanto, no meu caso, isso acabou sendo desnecessário, meu projeto foi capaz de compilar muito bem com uma lista vazia. E a tendência do VSCode de importar automaticamente o 'console' parece ter desaparecido completamente; Até agora não notei outros efeitos nocivos.Mais informações sobre como definir tipos no tsconfig.json aqui: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
fonte