import console = require("console");
console.
<< Je tape. et au-dessus est importé automatiquement dans VScode. Quelqu'un sait comment désactiver cela?
(Je suppose que c'est l'une de mes extensions. Probablement plus jolie.)
edit: cela ne se produit que dans l'environnement React Typescript. pas dans Typescript sans réagir.
typescript
visual-studio-code
âme de dragon
la source
la source
Réponses:
Avertissement: cela ne devrait pas être considéré comme "la solution" mais c'est la plus simple / la plus rapide.
Cette réponse suppose que vous utilisez VSCode. Les autres IDE devraient être similaires.
console
.
, permettant à IntelliSense d'ajouterimport console = require("console");
require("console")
la source
"console"
, mais c'est un détail. Merci!J'ai également vécu cela et cela semble être un problème avec la fonction d'importation automatique de VSCode. La désactivation de toutes les extensions ne semble pas non plus la faire disparaître.
Pour contourner ce problème, vous pouvez désactiver les importations automatiques dans les paramètres.
Si vous utilisez Javascript
"javascript.suggest.autoImports": false
Si vous utilisez Typescript
"typescript.suggest.autoImports": false
EDIT: l'autoimportation défectueuse se produit à cause de ce code dans un package dans l'arborescence des dépendances
Le package peut être situé dans votre répertoire node_modules local ou dans un package référencé installé globalement.
declare module "console"
npm list [packageName]
pour déterminer quel package de package.json dépend du package contenant le code de la console.Si vous ne trouvez pas de code dans vos node_modules locaux, vous pouvez non plus
Éliminez les packages un par un dans package.json
Recherchez le code de la console dans les modules installés globalement qui peuvent être référencés par les packages de votre projet
% USERPROFILE% \ AppData \ Roaming \ npm \ node_modules% USERPROFILE% \ AppData \ Local \ Microsoft \ TypeScript
Je sais que ce n'est pas une solution simple mais j'espère que cela aide, dans mon cas, j'avais une référence de react-native-copilot -> rimraf -> node qui contenait le code de la console. La suppression de react-native-copilot a résolu le problème.
la source
~/Library/Caches/
dossier. Je suis sur un mac. Comme il se trouve dans mon espace de travail de mise en cache, je viens de supprimer le code actuel: `` `` lang-js declare module "console" {export = console; } `` Et ça a marché!La solution la plus élégante que j'ai trouvée est de créer un
console.d.ts
fichier factice quelque part dans votre projet:Cela empêchera l'importation automatique.
Crédits: https://github.com/Microsoft/TypeScript/issues/30471#issuecomment-474963436
la source
Si vous ajoutez un extrait de code à insérer
console.log
et que vous l'utilisez à la place, il n'y aura pas d'importation automatique de "console"https://code.visualstudio.com/docs/editor/userdefinedsnippets#_create-your-own-snippets
voici mon extrait:
la source
Si vous comme moi oubliez "cl", vous pouvez utiliser plusieurs préfixes dans les extraits :)
la source
Une façon d'éviter cela est de modifier votre fichier tsconfig.json pour limiter l'ensemble de types qui sont automatiquement importés dans votre projet.
J'ai eu ce même problème, et je l'ai résolu en ajoutant:
types: []
dans mon fichier tsconfig.json. Cela empêche TypeScript (et par extension VSCode) d'importer automatiquement tous les packages de nœuds avec
@types/
dans la configuration du projet. Cela n'empêche pas TS d'importer ces définitions de type si vous importez explicitement un package utilisant ces types.Dans mon cas particulier, la
console
définition venait de@types/node
, qui avait été importée dans le projet en tant que dépendance de Storybook. Cependant, mon projet était un projet Webpack, destiné à s'exécuter dans un navigateur, donc importer des types Node.js dans mon code source n'avait aucun sens. L'ensemble de base des types que vous souhaitez utiliser dans un navigateur sont des types dom, pas des types de nœuds.Selon votre projet, vous devrez peut-être ajouter explicitement l'ensemble des packages de type de base dans le paramètre types (
types: ["dom", "react"]
et ainsi de suite). Cependant, dans mon cas, cela s'est avéré inutile, mon projet a pu se compiler très bien avec une liste vide. Et la tendance de VSCode à importer automatiquement la «console» semble avoir complètement disparu; Je n'ai pas remarqué d'autres effets néfastes jusqu'à présent.Plus d'informations sur la configuration des types dans tsconfig.json ici: https://www.typescriptlang.org/docs/handbook/tsconfig-json.html
la source