警告时Flash Builder中断(绑定错误)?

时间:2016-03-03 21:01:58

标签: actionscript-3 flex flex4 flash-builder

我在一个大型遗留项目中注入了一些愚蠢的绑定错误,但我很难找到它 这是输出到控制台的错误:

  

警告:无法绑定到类'String'上的属性'length'(类   不是IEventDispatcher)

我尝试逐步调试,尝试追踪发生这种情况的地方,但是有成千上万行代码和事件消息,非常非线性的程序执行。

问题:有没有办法让Flash Builder在这样的警告上中断?如果没有,是否有其他方法,技巧或黑客来跟踪这个?

1 个答案:

答案 0 :(得分:2)

这是由(等待它......)试图绑定到未标记为[Bindable]的属性引起的。在这种情况下,您有一个字符串变量,其length属性用于数据绑定。

这很可能是因为在组件的MXML标记中添加“myvar.length”作为属性引起的 - 类似于

<s:TextInput maxChars="{myInputString.length}" ...>

Flex将自动为您创建数据绑定,但它在运行时没有意识到该属性不是Bindable - 这意味着,如果属性值发生更改,通知将不会传播以更新侦听器。

数据绑定使用mx.binding.PropertyWatcher进行绑定,PropertyWatcher.updateParent是输出警告的位置。