Dans Google Closure Compiler je reçois l'avertissementAVERTISSEMENT - utilisation dangereuse du monde cet objet
AVERTISSEMENT - utilisation dangereuse du monde cet objet
Voici un exemple. La ligne d'erreur et le décalage fait référence au début du mot this
function aToggle() {
if(shown)
toggle.show()
else
toggle.hide()
$(this).text(shown ? 'Click to hide' : 'Click to show')
shown = !shown
}
link.onclick = aToggle
Je voudrais juste changer une méthode anonyme, mais je suis réutilisant aToggle
ailleurs dans le fichier, il doit être nommé. Je pourrais marquer aToggle
comme /**@constructor*/
- mais ce n'est pas un constructeur. Y a-t-il une autre annotation que je peux utiliser pour éliminer cet avertissement, ou suis-je coincé entre le marquage en tant que constructeur ou l'affichage d'un tas d'avertissements inutiles?
Ok, c'est facile à faire. De toute façon: 'shown' et' toggle' sont globaux? Je n'ai pas utilisé Google Closure Compiler, mais il ne sait probablement pas que votre aToggle est un gestionnaire d'événements. Voyez s'il y a un endroit où vous pouvez le dire, parce que «ceci» n'est pas nécessaire, le «ceci» global. – some
Oui, j'utilise unToggle dans d'autres endroits. Le code ci-dessus est juste un exemple que j'ai écrit. –