Ich frage mich, wo man globale Variablen für eine ExtJS-Anwendung hinzufügen kann. Ich habe bereits einige Vorschläge in stackoverflow angeschaut, die erwähnen, dass Sie sie in app.js hinzufügen können. Aber kann jemand spezifischer sein? Meine app.js sieht ungefähr so aus:
%Vor% Also, wo genau gehen die Variablen hin? In der Startfunktion? Außerhalb Ext.application
?
Besser wäre es, eine separate Klasse zu erstellen, die solche globalen Konstanten enthält. Dann sollten Sie diese Konstantenklasse als erfordert in app.js einfügen.
%Vor%Dadurch wird sichergestellt, dass die Klasse geladen ist und Sie können nun auf alle Eigenschaften / globalen Werte zugreifen. Ich habe das gleiche im Detail in meinem Blog erwähnt: link
Ich weiß, dass Sie bereits eine Antwort angenommen haben, die in Ordnung ist. Ich wollte nur eine MVC-Methode hinzufügen, um Namespace-Variablen einzuschließen, die der App zur Verfügung stehen. Für diese Globals gibt es eine Einschränkung - Sie können sie nicht in Ihren Klassendefinitionen verwenden. Das heißt, Sie können Ihre App nicht in Ext.define({})
Methoden referenzieren. Sie müssen in initComponent
method oder später verwendet werden.
Also hier ist was ich tue:
%Vor%Um diese anwendungsweiten Variablen zu verwenden, verweisen Sie auf Ihren App-Namespace und verschmutzen somit den globalen Raum nicht. So:
%Vor% Abgesehen von den Features, die in Ext
eingebaut werden können, können Sie immer eine direkte Funktion verwenden, um einen Abschluss zu erstellen:
Tags und Links javascript extjs extjs4 extjs-mvc