我使用一个代表模型的可绑定变量,并将它传递给几个嵌套组件。
顶级组件是我的变量:
[Bindable]
private var meetingInfo:MeetingInfoModel;
我在“预初始化”事件的处理程序中初始化它:
meetingInfo = MeetingInfoModel.getInstance();
然后我将它传递给 1 个组件:
<meetingViewStack:MeetingViewStack meetingInfo="{meetingInfo}"/>
在该组件中,我有以下内容:
private var _meetingInfo:MeetingInfoModel;
public function set meetingInfo( model:MeetingInfoModel ):void{
_meetingInfo = model;}
[Bindable]
public function get meetingInfo():MeetingInfoModel{
return _meetingInfo;
}
然后我将该变量传递给另一个嵌套组件:
<documentShare:DocumentPanel meetingInfo="{meetingInfo}"/>
我在哪里设置了相同的 setter/getter。然后我再次将它传递给另一个嵌套组件:
<documentShare:AttachmentFilesPanel meetingInfo="{meetingInfo}" />
在该组件中,我有一个用于绑定到“meetingInfo”的 DataGroup 组件的 ItemRenderer:
<s:DataGroup id="attachmentsList"
width="100%"
clipAndEnableScrolling="true"
dataProvider="{meetingInfo.docsAndAttachmentsList}"
itemRenderer="com.fmr.transporter.view.documentShare.DocumentUploadRenderer"
visible="{meetingInfo.docsAndAttachmentsList.length > 0}">`enter code here`
当我更新“meetingInfo.docsAndAttachmentsList”ArrayCollection 时,每个嵌套组件中的设置器都会被正确调用,直到......
...这是一个 AIR 应用程序,请注意...
我注销并重新登录。然后,这次不会触发最后一个嵌套组件中的 setter/getter。
为什么,为什么,会发生这种情况?
我已经进行了几天的故障排除,但终生无法解决。
感谢您提供任何有用的提示!!