我在位于 domainA 的 Main.swf 中实例化了一个Singleton类。该文件通过 LoaderMax (http://www.greensock.com/)从 domainB 加载 Game.swf 。当我尝试访问Singleton时,我猜这与 Main.swf 中的on instated相同。
有没有办法强迫这个?
答案 0 :(得分:1)
如果您的文件加载到同一个应用程序域,它应该是相同的单例。您可以使用LoaderContext来执行此操作。
此外,您可以使用dependency injection框架(如SwiftSuspenders)更优雅地处理此问题,但由于其中大多数都严重依赖describeType,我建议您进行测试如果您需要将内容注入大量游戏对象中,则会出现性能问题。
答案 1 :(得分:0)
这是使用Singleton的许多问题之一(http://misko.hevery.com/2008/11/21/clean-code-talks-global-state-and-singletons/)。我可能会建议您,只需将实例传递给game.swf,并将其实例化为main.swf的责任吗?