web-dev-qa-db-fra.com

WebStorm signale une "importation manquante" sur les objets intégrés

J'ai un projet ES6 dans WebStorm qui utilise évidemment parfois des objets intégrés tels que Math ou JSON.

HTML/ECMAScript 5 et ECMAScript 6 sont activés dans "Paramètres /(...)/ JavaScript/Bibliothèques", mais WebStorm suggère toujours que Math et JSON sont importations manquantes.

Lorsque je crée un nouveau projet vide, cela fonctionne bien. J'ai également remarqué que lorsque vous sélectionnez JSON dans ce nouveau projet et que vous appuyez sur CTRL + B, WebStorm affiche les définitions à partir de sa bibliothèque interne.

Au contraire, dans mon projet principal, il montre des types TypeScript provenant de parties totalement indépendantes du projet. Si je déplace le dossier avec TypeScript en dehors du projet, il semble fonctionner.

Nota bene, le fichier dans lequel j'ai des erreurs n'est pas écrit en TypeScript, n'inclut rien de ce qui est lié à TypeScript et n'est en aucun cas traité avec TypeScript. Il est uniquement traité avec le transpiler ES6 à ES5.

22
jaboja

Cela a fonctionné pour moi:

  • Naviguez Paramètres -> Langues et cadres -> Node.js et NPM
  • Cliquez sur Activer pour Node.js Core library under Coding Assistance section
  • Cliquez sur Appliquer

J'ai redémarré WebStorm et les avertissements sont partis.

26

Marquer le répertoire avec un sous-projet basé sur TypeScript comme exclu (clic droit → “Marquer le répertoire comme” → “Exclu”) résout le problème sans qu'il soit nécessaire de le supprimer physiquement du projet.

3
jaboja

J'ai eu le même problème et j'ai trouvé la solution:
Pour moi, c’est parce que j’avais un projet ECMA 5.1 avec un sous-dossier dans ECMA 6.
Il suffit de l’inverser: définissez tous les fichiers ECMA 5.1 dans ECMA 5.1 et définissez la version principale du projet sur ECMA 6.

0