2012-03-27 10 views
1

相関プロパティ(列とフィールドの定義)を持つExtJS 4(グリッドとフォーム)に2つのクラスがあります。ExtJSの非クラスを動的に読み込む4

私は彼らのために、共通の定義ファイルを作成し、動的にロードする:app.common.Columnsはクラスではない、

# app/common/Columns.js 

Ext.ns('myapp.common'); 
myapp.common.Columns = 
     [ 
     { 
     text: 'Name', 
     dataIndex: 'name', 
     }, 
     { 
     text: 'Email', 
     dataIndex: 'email', 
     } 
     ]; 


# app/view/Grid.js 

Ext.define 
     (
     'myapp.view.Grid', 
     { 
     extend: 'Ext.grid.Panel', 
     columns: myapp.common.Columns 
     } 
     ); 


# app/view/Form.js 

Ext.define 
     (
     'myapp.view.Form', 
     { 
     extend: 'Ext.form.Panel', 
     items: myapp.common.Columns.map 
       (
       function(v) 
       { 
         return { 
           name: v.dataIndex, 
           fieldLabel: v.text, 
           }; 
       } 
       ); 
     } 
     ); 

あなたが見ることができるように。

私はそれをクラスに変換し、それを使用するためにフォームとグリッドのコンストラクタをオーバーライドすることができますが、私はそれを簡単にしたいと思います。

app/common/Columns.js<script>タグを手動で追加する必要がありますか、それとも動的に読み込む方法がありますか?

答えて

1

ExtJsローダーを使用してファイルを動的にロードすることはできません。彼らのローダーは、クラス名とファイル名を正確に一致させることについて非常に厄介です。私はあなたのサンプルを試しました - それは動作していないようです。

関連する問題