0

我有一个可以根据需要加载模块的 Flex 应用程序。当第一个模块被加载时,它会创建一个 MyBackground() 类,它将背景涂成红色。当我选择加载第二个模块(并卸载第一个模块)时,我再次加载一个 MyBackground 类(来自第二个模块)。但是,当我进入 MyBackground 的构造函数时,它会直接进入 UIComponentDescriptor 的构造函数:

public function UIComponentDescriptor(descriptorProperties:Object)
{
    super(descriptorProperties);
}

这与为我加载的每个模块使用相同的应用程序域有关吗?Flex 是否将类类型加载到父应用程序中并缓存它们,所以当我第二次请求一个类时,它只是进行查找,而不实际查看该类是否相同?

任何有关此的信息表示赞赏。

4

1 回答 1

0

我已经设法通过使用子应用程序域解决了这个问题(这并没有 100% 的意义,因为它说子域不能覆盖父域,但这似乎正是正在发生的事情)。

m_moduleInfo.load(new ApplicationDomain(ApplicationDomain.currentDomain));
于 2010-01-11T22:52:07.210 回答