2

私は最近appProperty、クラス内で困惑し、Ext.app.Applicationなぜそれを使用するのか疑問に思いました。とにかくアプリインスタンスにアクセスして、インスタンスを再び含む変数にアクセスする必要がありますか?多分私は愚かですが、このプロパティは何のためにありますか?

4

1 に答える 1

2

ここで誤解があると思います。このnameプロパティは、アプリケーションの名前空間とそのゲッター メソッド ( getApplication()) を定義するだけですが、ゲッターを呼び出すか new を使用しない限り、そのアプリケーションの現在のインスタンスは提供されませんappProperty

次のアプリケーションがあるとしましょう

Ext.application({
    name: 'App',
    appProperty: 'instance',
    launch: function() {
        // some more code
    }
});

次のいずれかを呼び出すことにより、任意のコンポーネントからこのアプリケーションにアクセスできます

App.getApplicatio();

また

App.instance

2 番目のほうが少し速くなりますが、これはメソッド呼び出しではないため、このプロパティの名前を確実に定義できます。したがって、このプロパティが非常に便利であることがわかります。

名前空間は常に JavaScript のオブジェクトであることに注意してください。これが、プロパティを配置できる理由です。

于 2012-12-20T07:48:33.497 に答える