0

それぞれがプレーンな html ページを指している 100 の異なる URL があり、これらのプレーンな html ページを extjs ページに変換する必要があります。フッターとヘッダーはすべてのページで同じですが、中央のセクションはプレーンな html ページごとに異なります。最大限のコードを活用するために、モデル、ビュー、ストア、およびコントローラーを持ち、index.html、app.js、および viewport.js を分離する EXTJS4.1.0 アプリケーションを作成することを考えました。index.html、app.js、viewport.js を別々にする理由は、単一の index.html、app.js、viewport.js を保持しないと、ページをブックマークできないためです (ユーザーと使用のため100 の異なるページに 100 の異なる URL) したがって、基本的には 100 の異なる app.js と対応する viewport.js (viewport.js) を用意します。

私の最初の質問は、私が今言及した解決策が正しい解決策であるということです。

Extjs MVC パターンでは、autoCreateViewport: true を使用する場合、アプリケーションごとに 1 つの Viewport.js ファイルしか持てないというのは本当ですか。

次に、 Ext.Application ( app.js 内) で autoCreateViewport: false を使用し、次のように launch メソッドで別の Viewport のインスタンスを作成する場合:

Ext.application({
    name: 'Panda',
    autoCreateViewport: false,
    launch: function() {
        Ext.create('Panda.viewport.ViewportOne')
    }
});

100 個のビューポートの 1 つである ViewportOne のインスタンスを作成したことに注意してください。このソリューションでも、アプリケーションの実行中に不具合が発生しました(一部のナビゲーションが機能しないなど)。extjs が Panda.viewport.ViewportOne、Panda.viewport.ViewportTwo などの名前のビューポートを許可していないためでしょうか。

Extjs では、各ページが同じ extjs アプリケーションの一部となるように、ブックマーク可能なページを使用して完全に MVC スタイルのアプリケーションを作成できます (つまり、同じモデル ビュー、ストア、コントローラー、および動的読み込みを利用します)。

4

1 に答える 1

0

私が働いている会社には、プレーンな html と javascript で構築されたアプリケーションを使用している多くの顧客がいます。それぞれの使用は、ブラウザでブックマークしたそのアプリケーションの 1 つのページでのみ機能します。私に与えられたタスクは、プレーンな html/javascript ページを Extjs ページにアップグレードして、ユーザーがブックマークを更新する必要がないようにすることです。

最後に、共通のモデル/ビュー/ストアとコントローラーを使用できる場合、それぞれ100ページ(ユーザーがブックマークするindex.html、indexOne.htmlなど)を持つExtjs 4.1.0で単一のアプリケーションを作成することを考えています。

したがって、基本的にアプリケーションへのエントリ ポイントは異なりますが、すべてのページは同じモデル/ビュー/ストア/コントローラーを使用します。よりアーキテクチャ上の問題です。

この助けを願っています。

于 2012-06-29T18:08:30.707 に答える