我有一个 MXML 组件,其中包含一个.as文件
<fx:Script source="myfile.as" />
运行asdoc会引发一大堆错误,例如
"Error: The private attribute may be used only on class property definitions."
"Error: The public attribute can only be used inside a package."
我能找到的关于这个主题的唯一有用信息是这篇文章:http ://danielmclaren.net/2009/08/28/using-asdoc-with-mxml-files-and-included-scripts 。
那里用两种可能的解决方案描述了该问题:
- 解决方案 1 是将 AS 代码移动到 MXML 文件中。首先,有点违背了为 MXML 组件使用外部 .as 文件的目标,所以这确实是最后的选择。mxml 文件中的代码很乱(我真的不希望将逻辑与 mxml 混合),并且还需要使用 < !--- ---> asdoc 语法。
- 解决方案 2 是让 MXML 组件继承自普通类文件。这意味着基类中没有私有成员,只有internal(意味着组件安全的单独包)或protected。至少可以说,这会让事情变得乏味。
是否有任何其他解决方法或可能是asdoc的 beta/nightly 版本来解决问题?我正在使用 Flex 4.1.0.16076 SDK,即“最新的生产质量版本”。
更新
刚刚尝试使用 svn 主干中的 asdoc(4.5.0 rev. 16942),问题仍然存在。