1

1120: Access of undefined property arrMonth.行でエラーが発生するのはなぜarrMonth.pushですか?それを修正する方法は?

<fx:Script>
    <![CDATA[
        [Bindable]
        public var arrMonth:Array = new Array();

        arrMonth.push({label: "January"});
    ]]>
</fx:Script>
4

1 に答える 1

5

このエラーの理由は、ロジック(pushステートメント)がメソッド内にないため、インスタンスレベルではなく、クラスレベル(つまり静的)にあると見なされるためです。

これは、それを修正する2つの方法があることを意味します。

1 /変数も静的にします(これはあなたが望むものではないと思いますが、エラーは修正されます)。

<fx:Script>
<![CDATA[
    public static var arrMonth:Array = new Array();

    arrMonth.push({label: "January"});
]]>
</fx:Script>

2 /ロジックをメソッドに入れます。例:

<fx:Script>
<![CDATA[
    [Bindable]
    public var arrMonth:Array = new Array();

    override protected function initializationComplete():void {
        super.initializationComplete();
        arrMonth.push({label: "January"});
    }
]]>
</fx:Script>
于 2012-08-12T15:02:01.573 に答える