3

私はイントラネットアプリケーションを作成しています。そのUIは主にExtJS4.1.1を使用しています。

私は、UI、検証、通信などのためにExtJSコントロールやその他のコードを拡張するいくつかのカスタムJavaScriptクラスを作成しました。

私のコードはそれほど大きくなく、アプリケーションは制御されたよく知られた環境にデプロイされることを考えると、理想的には、アプリケーションの呼び出し(起動)時にすべての.jsファイルを事前にロードしたいと思います。これを実現するためのアプローチを知りたいのですが、主にExtJSの範囲内からです。

4

4 に答える 4

2

あなたがやりたいことは、本当に普通のことです。Sencha SDK を使用して extjs コンポーネントを拡張するすべてのカスタム JavaScript クラスを含む 1 つのファイルを作成する方法については、デプロイ セクションをご覧ください。

役に立つことを願っています;)

于 2012-08-30T04:16:49.557 に答える
1

今月、Sencha (ベータ版) は改良されたビルド ツールをリリースしました。実際、これは Java で完全に書き直したものです (私は信じています)。Sencha Cmdが名前であり、前任者がそうあるべきだったのはそれだけです!

コンパイル時間はおそらく前作の 10 分の 1 に短縮され、パッケージ/ビルドは強力なコマンド プロセッサを使用して構成されるようになりました。

他のビルド フレームワークや CI サーバーへの統合は現在最優先事項であり、ツールを ANT と統合することで実現されています。

プロジェクトを古いSencha SDK Toolsものから新しいものに移行するために過去数時間を費やしましたSencha Cmd。特に新しいコンパイラが気に入っています。

ドキュメンテーションはすでにかなり良いです。

Sencha が提案する標準 (単一ページ) パターンに従う小規模なプロジェクトの場合、実際には、アプリケーションの作成およびビルド プロセス全体を管理する一連の高レベル コマンドがあります。

さらに、Sencha にはマルチページ アプリケーション用のパターンが用意されています。

また、いつでもコンパイラを直接使用して、その上に独自のビルド プロセスを実装できます。それが私たちのプロジェクトで行ったことです。

于 2012-09-30T17:06:32.767 に答える
0

Ext.Loaderというクラスが 1 つあります。

于 2012-12-28T09:23:30.983 に答える
-1

これは、Ext JS に関する質問というよりも、サーバー側に関する質問です。すべてのページを前もって含めたいですか? ファイルを連結し、パック全体を縮小<script>し、Web アプリのすべてのページにタグを追加するための JavaScript コンプレッサーを入手してください。

Ext JS (3 と 4 の両方) を多用するイントラネット Web アプリにも取り組んでいますが、かなり大きなコードベースがあります。Tomcat を使用しているため、各ページの標準ファイルと、そのページに必要なファイル グループまたは個々のファイルを含む Java クラスがあります。そのようなものもあなたのために働くかもしれません。

必要なときに動的ロードに使用できますExt.Loaderが、それはあなたが探しているものとは思えません。ただし、コードベースが拡大し、より良いソリューションが必要な場合は、まだオプションがあります。

編集:コメントで述べたように、私の元の回答はSencha SDK Toolsに対処できませんでした。私の回答を修正した回答の一部にする方が有益だと感じました。

このタスクはまさに​​ Sencha SDK が設計されたものかもしれませんが、この製品はまだ本番環境向けに十分に成熟していないと感じています. これを書いている時点で、現在のバージョンは 2.0.0 Beta 3. Beta で、まだ開発中であることを示しています。ドキュメントは事実上存在せず、公式フォーラムには、製品が単に機能しないと主張するトピックがたくさんあります。この時点で、それは遊ぶためのおもちゃにすぎません。私が見た中で最も役立つドキュメントはSencha SDK Tools 2.0 と ExtJS4: The Missing Docsで、著者は「SDK ツールには多くの作業が必要です」と締めくくっています。

実稼働環境用の製品を選択するときは、安定していて信頼性が高く、ドキュメントが充実していて、サポートが充実しているものを選びます。Sencha SDK Tools はそれらのどれでもありません。まだ。

于 2012-08-30T12:10:22.807 に答える