在Flex中进行组件初始化期间设置变量

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Flex中进行组件初始化期间设置变量相关的知识,希望对你有一定的参考价值。

我正在加载一个组件,该组件将进行HTTPService调用以获取数据,然后该数据将用于在组件中设置某些变量。 我在init()函数中调用HTTPService(用于初始化事件),然后根据在HTTPService结果处理程序中接收到的数据设置变量。 但是,在初始化阶段和creationComplete阶段,变量仍为null。 如果尝试读取creationComp()函数中的变量(对于creationComplete事件),则这些变量仍为空。 这个对吗?

我想我不太了解Flex初始化周期。 这些变量何时真正设置并可以使用? 组件加载后,我需要自动操作这些变量。 在creationComplete之后是否有合适的事件或其他解决方法? 我正在使用Flex 3。

答案

您对Flex组件生命周期的理解是正确的; 初始化事件在creationComplete之前触发。

但是,HTTPService调用是一个单独的异步操作。 不能保证在creationComplete事件触发时调用结果处理程序。 您应该在结果处理程序中对变量进行操作。

另一答案

您应该考虑防止从组件分派creationComplete事件,直到HTTPService返回为止,然后自己手动分派该事件。

这样可以解决您的计时问题。

以上是关于在Flex中进行组件初始化期间设置变量的主要内容,如果未能解决你的问题,请参考以下文章

Flex 绑定变量没有效果

在过程模拟期间初始化状态变量的导数

MXML 类初始化顺序

重新初始化组件

Kotlin CI 测试期间的静态最终变量初始化(Java 中)不正确

在异步 iCloud 初始化期间未能完成商店设置