2012-04-05 1 views
1

私はExtJSを初めて使い、Ext.applicationとExt.directを使ってサンプルアプリケーションを作成しました。Ext.applicationとExt.direct:データが表示されない

Ext.define('AM.model.UserModel', { 
    extend: 'Ext.data.Model', 
    alias : 'widget.userModel', 
    fields: ['SlNo','name'] 
    proxy: { 
     type: 'direct', 
     directfn: HelloWorld.getGridDetails 
    } 
}); 

以下のように私は私のモデルを構成し、

Ext.define('AM.view.user.List' ,{ 
    extend: 'Ext.grid.Panel', 
    alias : 'widget.userlist',  
    title : 'Users',   
    initComponent: function() { 
     this.store = { 
      model:'AM.model.UserModel', 
      autoload:true, 
     }; 
     this.columns = [ 
         { 
          header: 'SlNo', 
          dataIndex: 'SlNo', 
          width:100, 
          disabled:false 
         }, 
         { 
          header: 'Name', 
          dataIndex: 'name', 
          width:150 
         } 
     ]; 
     this.callParent(arguments); 
    } 
}); 

以下のように私は、グリッドパネルを使用しています最終的には私のindex.jsこの

Ext.require('Ext.direct.*', function() { 
    Ext.direct.Manager.addProvider(Ext.app.REMOTING_API); 
    }); 
    Ext.require([ 'AM.view.user.List','AM.model.UserModel']); 
    Ext.application({ 
     name: 'AM', 
     appFolder:'myApp', 
     launch: function() { 
      Ext.Direct.addProvider(Ext.app.DirectAPI);         
      Ext.create('Ext.container.Viewport', { 
       items: { 
        xtype: 'userlist', 
        width: 552 
       }, 
       renderTo: Ext.getBody() 
      }); 
     } 
    }); 

私は受信データのように見えます私はHelloWorld.getGridDetailsからindex.jsまでを以下に示します

action: "HelloWorld", 
    method: "getGridDetails", 
    result: [ 
    {slNo:2, name:"patton"}, 
    {slNo:3, name:"Omar N Bradely"}, 
    {slNo:1, name:"Sam Manekshaw"} 
    ], 
    tid: 1, 
    type: "rpc" 

グリッドにデータを読み込むことができないという問題があります。つまり、グリッドが表示されたときにダイレクトメソッドHelloWorld.getGridDetailsが呼び出されることはまったくありません。何か不足していますか?あなたの誰かが助けてくれますか?

おかげ
クマール

答えて

1

私は実際には、このための解決策を考え出しました。今は理解できませんが、決して遅くはありません。私はindex.js前

<script type="text/javascript">Ext.direct.Manager.addProvider(Ext.app.REMOTING_API);</script> 

を追加した後のindex.html

<script type="text/javascript" src="Api.js"></script> 
**<script type="text/javascript">Ext.direct.Manager.addProvider(Ext.app.REMOTING_API);</script>** 
<script type="text/javascript" src="index.js"></script> 

に次のように変更する必要があります。それは働き始めた。

+0

今週中にExtJS 4でExt.Directを実装してもらえますか?あなたは素早く電話してもらえますか?私は主題についてかなりの研究をしており、現在アップグレードを試みています。私は、APIディスクリプタファイルとこのExt.app.REMOTING_APIプロバイダに苦労しています。私はカスタムAJAXプロキシを1年以上使っていましたが、4.1.0から4.2.1へのアップグレード中に壊れました。 – MacGyver

+0

はあなたに電子メールを送りました。 – MacGyver

関連する問題