gpt4 book ai didi

apache-flex - 问题转换为 flex 中的接口(interface)

转载 作者:行者123 更新时间:2023-12-04 06:13:27 26 4
gpt4 key购买 nike

我正在使用接口(interface)进行模块通信,如 adobe flex documentation .当我在 mxml 中有一个 ModuleLoader 时,一切都很好。

<mx:TabNavigator id="testNav"
height="100%"
width="100%">
<s:ModuleLoader id="firstTab"
label="ONE"
width="100%"
url="path/to/module/Mod1.swf"/>

<s:ModuleLoader id="secondTab"
label="TWO"
width="100%"
url="path/to/module/Mod2.swf"/>


</mx:TabNavigator>

我有这个代码
var someChild:* = firstTab.child as ISomeModule;

ISomeModule 是接口(interface)。
但是当我在另一个文件中的 actionscript 中有一个 ModuleLoader 时,当我做同样的事情时, someChild 在转换为 ISomeModule 时变为空
var myLoader:ModuleLoader=new ModuleLoader();
myLoader.percentHeight=50;
myLoader.percentWidth=50;
myLoader.loadModule(moduleURL + "?attr=value&attr2=" + parentDocument.attr2);

在另一个功能中,我有
var childMod:* = myLoader.child as ISomeModule;
myLoader.child不为空,但当转换为 ISomeModule 时,它​​变为空。
有谁知道如何解决这个问题?
谢谢

最佳答案

2件事:

  • 您需要相同的 ApplicationDomain 用于跨模块类共享(您还应该在模块编译中启用优化):<s:ModuleLoader url="someURL" applicationDomain="{ApplicationDomain.currentDomain}" />
  • 如果我没记错应该是firstChild.content而不是 firstChild.child对于实际的模块本身。
  • 关于apache-flex - 问题转换为 flex 中的接口(interface),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7516686/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com