Имя класса MXML не является идентификатором его экземпляра (поскольку он может иметь много экземпляров).Вы должны думать о файлах MXML не как о файлах, а как о классах.Они абсолютно такие же, как обычные классы ActionScript.Те же правила, что и в других языках ООП.Поэтому, если у вас есть main.mxml
main
, это имя класса для этого класса, и его пакет определяется тем путем к файлу MXML относительно исходной папки (как в классах ActionScript).Вот почему вы должны называть свои классы MXML заглавными буквами (Main.mxml
, но не main.mxml
).
Если ваше main.mxml
является приложением верхнего уровня, вы можете указать его как FlexGlobals.topLevelApplication
.Но это не правильный способ.
Лучший способ - внедрить это свойство в целевой класс.Это можно сделать с помощью Dependency Injecting Framework / Container, например Spring ActionScript или RobotLegs или Parsley .Или вы можете сделать это вручную, делегировав из верхнего приложения класс, содержащий кусок кода, который обрабатывает модули.Когда модуль загружен, передайте это значение туда.