问题描述
||
我想知道,如果您有多个使用相同子组件(但参数稍有修改)的组件文件,是否可以为该子组件分配带有字符串常量的ID?
当我在Flex SDK 3.5中尝试以下操作时,它给了我一个编译错误:
<!-- Example -->
<mx:Button id=\"{ComponentIDs.ID_BUTTON_ONE}\" />
错误:
\"{ComponentIDs.ID_BUTTON_ONE}\" is not a valid identifier.
猜猜这是否有可能实现? ID字段的语法是否不同?
解决方法
MXML中的组件ID在编译时进行评估。因此,您不能在那里使用任何形式的表达式。
,因此,这意味着即使对于状态标记,在其闪亮的新Spark版本中,也不能在mxml中使用任何形式的String常量。因此,当然,开发人员的下一个思路是如何在ActionScript中进行操作,并且一切都变得很笨拙,无法使用对象符号在代码中创建状态,...直到您意识到includeIn令牌是一个mxml编译器,并且意味着ActionScript没什么...所以就在那里,您必须在代码中继续使用String文字