我想知道,如果你有多个组件文件使用相同的子组件(但稍微修改了参数),是否可以为该子组件分配一个带字符串常量的ID?
当我在Flex SDK 3.5中尝试以下操作时,它会给我一个编译错误:
<!-- Example -->
<mx:Button id="{ComponentIDs.ID_BUTTON_ONE}" />
错误:
"{ComponentIDs.ID_BUTTON_ONE}" is not a valid identifier.
是否有可能实现这一点? ID字段的语法是否不同?
答案 0 :(得分:3)
MXML中的组件ID在编译时进行评估。所以你不能在那里使用任何表达方式。
答案 1 :(得分:1)
所以这意味着即使对于状态标签,在其闪亮的新火花版本中,也不能在mxml中使用任何形式的String常量。当然,下一代开发人员想到的是如何在ActionScript中实现它,并且使用Object表示法在代码中创建状态的所有事情都变得很糟糕......直到你意识到includeIn标记是一个mxml编译器的东西和方法对ActionScript没有任何意义......所以,你必须在你的代码中继续使用字符串文字