J'utilise Visual Studio Code 1.11.1.Visual Studio Code JavaScript Intellisense ne fonctionne pas pour les propriétés d'objets
Pour le code suivant, IntelliSense fonctionne correctement, étant entendu que la variable toile est de type HTMLCanvasElement:
var canvas = document.getElementsByTagName('canvas')[0];
En fait, quand j'écris le nom de cette variable suivi d'un point, il me montre toutes les propriétés et méthodes de HTMLCanvasElement.
Cependant, en utilisant le code suivant, dans lequel je conclurai cette variable à l'intérieur d'un objet (agissant comme un espace de noms), IntelliSense ne comprend pas plus que la variable est de type HTMLCanvasElement:
// create a namespace "App"
var App;
App = {};
App.canvas = document.getElementsByTagName('canvas');
Lorsque j'écris "App.canvas" suivi d'un caractère point, Intellisense ne me montre pas toutes les propriétés et méthodes de HTMLCanvasElement. En fait, il considère App.canvas de type tout.
J'ai essayé aussi d'utiliser l'annotation @type comme dans le code suivant, mais le résultat est le même:
// create a namespace "App"
var App;
App = {};
/** @type {HTMLCanvasElement} */
App.canvas = document.getElementsByTagName('canvas')[0];
Est-il possible de faire IntelliSense comprendre les types de variables pour les propriétés de objets (comme App.canvas dans mon exemple)?
Remerciez vous beaucoup pour votre réponse! La solution de contournement a fonctionné parfaitement. Bon à savoir que vous travaillez pour résoudre ce problème. Quoi qu'il en soit, continuez votre bon travail, car Visual Studio Code est un excellent éditeur de code léger pour travailler avec JavaScript! :) – user1945293