2017-10-19 20 views
1

tI ont ce code:Conseil VSCode où la définition de la classe est

const Gatherer = require('../gatherer'); 

class MetaRobots extends Gatherer { 
    /** 
    * @param {{driver: !Driver}} options Run options 
    … 
} 

module.exports = MetaRobots; 

VSCode met en évidence Driver (à l'intérieur jsdoc) parce qu'il est incapable de trouver sa définition. Cependant, la définition de cette classe est dans le même projet:

class Driver { 
… 
} 

module.exports = Driver; 

Importation Driver dans le fichier MetaRobots (const Driver = require('../../driver');) résout le problème, mais j'ai une importation non utilisée.

Impossible de trouver la définition du pilote can't find definition of Driver

peut trouver la définition du pilote, mais le pilote est utilisé importation can find definition of Driver, but Driver import is unused

Est-il possible que je peux laisser entendre VSCode sur la définition de Driver sans l'importer?

[EDIT] Informations complémentaires:

+0

Quelle version de vscode? Des plugins supplémentaires? Sont ces fichiers de type JavaScript ou TypeScript? Avez-vous le fichier jsconfig/tsconfig correctement configuré? Quel est le rapporteur de problème? –

+0

@jsynowiec mis à jour ma question avec des informations supplémentaires;) Le projet est OSS, de sorte que vous pouvez jeter un oeil. –

+0

Merci, je vais jeter un coup d'oeil. Avez-vous des plugins liés à jsdoc/jshint? –

Répondre

1

Il semble que ce n'est pas un problème avec le vscode lui-même, mais plutôt un problème avec le serveur TypeScript fonctionnant en dessous.

Malheureusement, actuellement, vous devez importer Connection dans le fichier driver.js pour qu'IntelliSense prenne correctement les types. C'est discussed sur la façon dont il devrait être résolu. Il y a aussi an issue décrivant un cas très similaire.

Vous pouvez essayer d'expérimenter avec des fichiers de définition de type et des modules UMD, mais cela risque de ne pas fonctionner.

+0

Boomer! Devra attendre pour eux de le réparer. Merci beaucoup! –