Actionscript 3 如何在一行上声明多个[Bindable]变量。。。绑定停止工作

Actionscript 3 如何在一行上声明多个[Bindable]变量。。。绑定停止工作,actionscript-3,apache-flex,actionscript,flex4,Actionscript 3,Apache Flex,Actionscript,Flex4,我试图在一行中声明多个可绑定变量(使用单个“var”调用): 我只想使用'var'调用一次以节省时间(阅读本文后:) 问题是我现在收到“数据绑定将无法检测到“var2”的分配”的警告 如果我以传统方式(在多行上)声明它们,我不会得到警告: [Bindable] public var var1:int = -1; [Bindable] public var var2:int = -1; [Bindable] public var var3:int = -1; [Bindable] public v

我试图在一行中声明多个可绑定变量(使用单个“var”调用):

我只想使用'var'调用一次以节省时间(阅读本文后:)

问题是我现在收到“数据绑定将无法检测到“var2”的分配”的警告

如果我以传统方式(在多行上)声明它们,我不会得到警告:

[Bindable] public var var1:int = -1;
[Bindable] public var var2:int = -1;
[Bindable] public var var3:int = -1;
[Bindable] public var var4:int = -1;

有办法解决这个问题吗?

为什么不将所有这些变量放在一个类中,然后使类实例可绑定

i、 e

然后:

[Bindable]公共var myContact:Contact

现在,通过使整个类变量可绑定,不仅可以节省一点性能,而且还遵循了OOP模式

现在你在玩弄权力…哦,权力

这里有一个参考:

这没有道理。您正试图从内联声明中获得最小的性能改进,同时通过使这些属性可绑定来创建巨大的开销(相对而言);或者在班级层面。如果将类指定为可绑定的,则该类的所有属性都将是可绑定的。除非你计划在一个循环中创建很多变量;我不太重视使用循环来证明性能影响的性能测试,因为无论哪种方式,它们都是可绑定的,我正在努力使其更快。这很有道理。@ginsberg它无论如何都不会更快。Bindable标记将生成大量代码(getter、setter、值检查、事件调度——最后一个对性能尤其不利),不管您最初是否内联编写。即使没有,我也怀疑任何人会注意到这一区别。@Reboog711您可能是对的(冒泡事件除外:它们在它们传递的每个DisplayObject上都被克隆,即重新实例化)。无论哪种方式,至少有一个PropertyChangeEvent的实例化,其成本比预期的性能增益高出一百倍。如果你不打算绑定它,那么创建一个可绑定的属性有什么用呢?我认为这是唯一的方法,尽管我不想在这个特定的案例中遇到麻烦。非常感谢。
[Bindable] public var var1:int = -1;
[Bindable] public var var2:int = -1;
[Bindable] public var var3:int = -1;
[Bindable] public var var4:int = -1;
package
{
    [Bindable]
    public class Contact
    {
        public var contactId:int;

        public var firstName:String;
        public var lastName:String;
        public var address:String;
        public var city:String;
        public var state:String;
        public var zip:String;
        public var phone:String;
        public var email:String;
    }
}