Nehmen wir an, ich habe einen Controller in AngularJS:
%Vor%In meiner IntelliSense-Datei kann ich UserService jedoch dynamisch einspeisen, um die folgenden Funktionen zu erhalten:
%Vor% Nun, wenn ich eine globale Variable (oder Funktionsvariable) definiert habe als UserService = {}
und innerhalb meiner Controller Funktion gebe ich UserService.
ein Ich bekomme ein Popup von allen Funktionen im Service. Aber wenn ich es nicht definiert habe, da es von intellisense als undefined
interpretiert wird, kann es mir die Optionen nicht anzeigen, obwohl statementcompletion
funktioniert (wie in der Javascript Language Service Konsole zu sehen ist).
Meine Frage ist, abgesehen von der Annotation der Funktion, ob UserService
als Objekt in der Intellisense-Datei definiert ist? Die Definition von event.target = {}
funktioniert nicht (siehe obigen Intellisense-Code).
Eine Möglichkeit besteht darin, die Komponentenfunktionen (Controller, Dienste usw.) aus dem intellisense-Code mit leeren Objekten aufzurufen.
Ich bin sicher, das kann viel sauberer sein, aber hier ist was ich getan habe:
Von John Bledsoe: Ссылка
references.js - fügen Sie diese Datei als Referenz in Tools & gt; Optionen & gt; TextEditor & gt; Javascript & gt; Intellisense & gt; Referenzen
hinzu %Vor%_moduleDecorator.js - um den Überblick über alle Module in Ihrer App zu behalten
%Vor%_componentDecorator.js - um Komponentenfunktionen mit leerem Objektparameter
aufzurufen %Vor%Tags und Links javascript angularjs visual-studio-2012 intellisense javascript-intellisense