2011-09-21 5 views
1

Comment puis-je dire à mon IDE (PHPStorm) que certaines variables globales ne sont pas "non déclarées", mais simplement déclarées ailleurs; et avoir un type spécifique?Spécifier le type de variables globales déclarées dans un autre fichier

Un exemple de Magento (opcheckout.js):

if (response.duplicateBillingInfo) { 
     shipping.setSameAsBilling(true); // "shipping undeclared" warning 
    } 
     // in fact, shipping is a global variable with constructor "Shipping". 

Ce que je voudrais faire est quelque chose comme ceci:

 /** @var Shipping window.shipping */ 
     shipping.setS // with autocompletion: 
       setSameAsBilling 

Répondre

1

Une première partie de la réponse - comment les marquer comme à l'extérieur déclaré:

Mettez une déclaration normale var au début du fichier "Importation". Ceci (un peu surprenant) ne remplace pas 'global' par 'module local' car JS n'a pas de variables locales de module. Pour la deuxième partie - J'utilise PyCharm et il semble que la manipulation de tels cas soit assez bonne, au moins dans le cas de l'EAP 2.0.

+0

La deuxième partie a suivi de la première partie. Qui a fonctionné. Merci! – demonkoryu

+0

génial de l'entendre. btw, les IDE de jetbean semblent être de loin les meilleurs en auto-complétion, ils analysent même les touches dict utilisées dans la fonction appelée et tous les fichiers inclus dans le script (et ressemble même à leurs inter-calls) ce qui me déconcerte. – Guard

+0

Oui, je suis étonné par les trucs de Jetbrains. Je ne pensais pas que je rencontrerais jamais un IDE qui supporte le refactoring PHP; et comprend des choses comme SASS. – demonkoryu

Questions connexes