5

フラッグシップアプリケーションでは、ExtJS3.xをかなり頻繁に使用しています。アプリケーションの管理領域は、提供するさまざまなモジュールに分割されています。各モジュール、およびその後のモジュールのさまざまなCRUDアクションの各ページには、機能を処理するための独自の.jsファイルがあります。

私たちが始めたとき、私たちはすべてのコードを投入しExt.onReady()、グローバル名前空間についてはあまり心配していませんでした(ちょっと...私たちは自分たちをjavascript開発者だとは思っていませんでした)。ExtJSのコツをつかんだ後、私はシングルトンパターンを使用し、そのExt.onReady()ようにinitメソッドを呼び出すことに移りました。

var newModule = {
    propertyOne: 'asfd',
    propertyTwo: 'asdf',
    init: function() {
        // set up
    }
};

Ext.onReady(function() {
    newModule.init();
});

これはjavascriptシングルトンパターンの正しい使用法ですか?たとえば、モジュールパターンのように、シングルトンよりもExtJSに適合するパターンはありますか?

私はこのガイドをJavascriptでデザインパターンを学ぶための出発点として使用してきました。

4

2 に答える 2

2

最終的にExtJSにアップグレードすることを決定しました。新しいMVCアーキテクチャが導入されているため、ExtJSソフトウェアを設計するための最良の方法はExt.application()

あなたはここでそれについて読むことができます。

于 2011-10-04T19:36:22.830 に答える
1

ここで、独自のモジュール、ファイルModule.jsの作成例を見ることができます。このパターンを独自のアプリケーションに使用しましたが、問題はありませんでした。

Ext.app.Module = function(config){
    Ext.apply(this, config);
    Ext.app.Module.superclass.constructor.call(this);
    this.init();
}

Ext.extend(Ext.app.Module, Ext.util.Observable, {
     init : Ext.emptyFn
});
于 2011-08-25T12:46:48.413 に答える