1

Ext JS 4.1、JSP、および Spring MVC 3.1 を使用してアプリを実装しようとしているときに、根本的な問題が発生しています。私はSpringが得意なので、Ext JS 4.1に問題があります。

他の投稿によると、慣例のように見える単一の app.js タイプファイルがあります。ウィジェットのレイアウトがすべて異なる複数の JSP があります。1 つの JSP につき 1 つの Ext JS コントローラーが必要だというのは正しいですか? もしそうなら、どうすればいいですか?そうでない場合、何が欠けていますか。

私の JSP ファイルでは、現在単一のコントローラーを持つ app.js ファイルを参照しています。2 番目の JSP で同じ app.js ファイルを参照し、別の Ext JS コントローラーを使用するように要求/指示する方法がわかりません。誰でもこれを理解するのを手伝ってもらえますか?

はい、Ext JS のドキュメントを読みましたが、1 つのコントローラーしか使用していません。

4

1 に答える 1

3

素早い回答:

おそらく、すべてのスクリプト タグを 1 つのページに含めたいと思うでしょう。次に、管理パネルやユーザー パネルなどの子アイテムを含むメイン コンテナーとして、カード レイアウトのパネルを使用します。次に、カード レイアウトを切り替えて、表示するアイテムをいつでもアクティブなカードに設定できます。これらの各子コンポーネントには、必要なレイアウトとその他のコンポーネントを自由に組み合わせることができます。

すべてのファイルを 1 つの app.js に結合することは、ステージングまたは運用に移行するときに実行できます。多くの場合、開発環境で開発用に単一の app.js ファイルを使用することは理想的ではありません。これは、速度が低下し、デバッグがより困難になる可能性があるためです。ファイルを単一の app.js に結合することは、その時点でブラウザーのパフォーマンスを向上させるために理想的です。

より長い答え:

複数のjspビューページを持つことができますが、それはあなたが望むものですが、おそらく「Sencha way」に移行し、メインアプリに単一のビューを使用したいと思うでしょう。

Ext JS の一般的な用途は、単一ページ アプリケーションです。つまり、メイン アプリ用に単一の JSP ビューを持つことを意味します。多くの場合、使用できる唯一の他のページは、別の jsp のログイン フォームです。

jspビューを介してサーバーから各ページビューをリクエストすることからシングルページアプリを使用するように切り替えるときは、慣れるまで時間がかかることがよくありますが、移行が完了すると、シングルページアプリ内での作業はユーザーと開発にとって素晴らしい経験になります、 それも。

単一ページのアプリでは、メインの JSP ページにすべての Ext JS ビューのすべてのスクリプトとすべての Ext JS コントローラーがスクリプト タグを介して含まれます。本番環境では JAWR または jsbuilder3 を使用する必要がありますが、開発の初期段階では、労力を最小限に抑えるために各スクリプト タグを含めるだけでよいでしょう。

私が現在取り組んでいる非常に大きなアプリは、login.jsp と home.jsp を持つ Spring MVC アプリです。Login.jsp は、Ext JS を含まないスプリング セキュリティを使用します。ログインに成功すると、すべてのスクリプトが含まれている home.jsp にユーザーが移動します。

これは、セットアップを試みたい構成です。これは、私がよく設定するものと似ています。この情報の一部はおそらく既におなじみですが、念のため含まれています。

Ext JS ビュー。ボーダー レイアウトでビューポートを使用できます。ビューポート コンポーネントは、ブラウザー領域全体を使用します。ボーダー レイアウトでは、北、東、南、西、中央の 5 つの領域にコンポーネントを配置できます。中央のリージョンを使用してから、必要な他のリージョンを使用するだけです。一般的に、東と北の地域にナビゲーション パネルとボタンを含めることができます。中央領域にカード レイアウトのパネルを含めることができます。カード レイアウトには、そのパネルの子であるアイテムとして、管理者ビュー、ユーザー ビューなどを含める必要があります。カード レイアウトを使用しているため、これらのアイテムは常に 1 つしか表示されません。

これらの各ビューは、レイアウトとコンポーネントの任意の組み合わせを使用して構成できます。

Ext JS コントローラー ビューを構成したら、ボタンなどのナビゲーション項目にバインドされたナビゲーション コントローラーを含めます。ナビゲーション ボタンがクリックされると、カード レイアウトの activeItem を切り替えて、管理者、ユーザー、またはその他のパネル項目をアクティブに設定する必要があります。ユーザーには、「ページ」が変更されたように見えます。

ここから、そのメイン カード レイアウトの各メイン ビューのコントローラー (ユーザー コントローラー、管理コントローラーなど) を作成できます。

これらをまだ読んでいない場合は、読む価値があります。

http://docs.sencha.com/ext-js/4-1/#!/guide/application_architecture http://docs.sencha.com/ext-js/4-1/#!/guide/mvc_pt1

于 2012-08-03T01:34:36.413 に答える