2016-08-19 45 views
2

我正在研究基于Flash的Web应用程序。前端用flex:MXML和ActionScript编写。该项目在FlashDevelop中生成良好,但是当我使用F5测试时,它会引发错误。编译但在测试过程中出现“错误#1034:类型强制失败”

的代码行:

[Bindable] 
public var currentStateDataProvider:ArrayCollection = new ArrayCollection(); 

错误消息:

[Starting debug session with FDB] 
[Fault] exception, information=TypeError: Error #1034: Type Coercion failed: cannot convert mx.collections::[email protected] to Array. 

这有什么错我声明和初始化变量的方法是什么?

+1

这并不罕见。可能的解决方案是不在var声明中实例化对象。相反,将'new ArrayCollection();'移到构造函数中。在AS3中,最好不要实例化类中的复杂对象var声明 – BadFeelingAboutThis

+0

工作!发生这种情况有什么具体原因吗?我正在编写的应用程序是在3 - 4年前编写的;它工作得很好,但现在我得到这个错误。 –

回答

0

可能是错误来自使用变量。声明和实例化看起来不错,它们不应该是问题。 无论如何,我同意BadFeelingAboutThis的评论。要在构造函数中实例化复杂变量对我来说更好。

相关问题