在MXML代码中
<fx:Script>
public var data:ArrayCollection = new ArrayCollection();
</fx:Script>
<s:DataGroup dataProvider="{data}" />
我收到了警告:
数据绑定无法检测“数据”的分配
我知道在这种情况下数据提供程序永远不会更改,并且想要在这种情况下禁止此警告,但我不想完全禁用它,所有项目中的-show-binding-options=false
都不是一个选项
如何仅在一个地方禁用警告?禁用整个文件不是很好,但可以接受。
答案 0 :(得分:2)
如何让你的data
变量可绑定?类似的东西:
<fx:Script>
[Bindable]
public var data:ArrayCollection = new ArrayCollection();
</fx:Script>
<s:DataGroup dataProvider="{data}" />
答案 1 :(得分:0)
您可以使用<fx:Script></fx:Script>
而不是<fx:Declarations></fx:Declarations>
。在该MXML元素中声明的任何对象都是可隐式绑定的。以下是您的代码的样子:
<fx:Declarations>
<s:ArrayCollection id="data" />
</fx:Declarations>
<s:DataGroup dataProvider="{data}" />
此外,它变得更具可读性,并且没有ActionScript和MXML的混合。由于您的集合被声明为public,因此使用ActionScript与[Bindable]
或使用MXML会有所不同。
<NameOfComponent>Includes.as
形式的每个MXML组件创建一个单独的ActionScript文件。