2013-02-21 42 views
0

如何從DirectProxy的配置中訪問我的TreeStore實例中的函數getTree?像這樣等沒有什麼作品....ExtJs TreeStore中的調用函數

有人能夠幫助我嗎?

Ext.define('PM.store.Projects', { 
    extend: 'Ext.data.TreeStore', 
    model: 'PM.model.Project', 
    autoLoad: true, 

    /*proxy: { 
     type: 'ajax', 
     url: 'data/projectTree.json', 
     reader: { 
      type: 'json', 
     }, 
    }, 
    root: { 
     name: 'Test', 
     id: -1, 
    }*/ 

    proxy: { 
     type: 'direct', 
     directFn: PM.controller.Projects.getTree, 
    }, 

    /*root: { 
     name: 'Demo', 
     children: [ 
      { 
       name: 'Test', 
       leaf: true, 
      }, 
     ], 
    },*/ 

    getTree: function() { 
     alert("Test"); 
    } 
}); 

回答

0

你可以在我想的構造函數中構建你的代理。

Ext.define('PM.store.Projects', { 
    extend: 'Ext.data.TreeStore', 
    model: 'PM.model.Project', 
    autoLoad: true, 

    constructor: function(config) { 
     var me = this; 
     Ext.apply(me, config); 
     me.proxy = { 
      type: 'direct', 
      directFn: me.getTree 
     }; 
     me.callParent(); 
    }, 

    getTree: function() { 
     alert("Test"); 
    } 
}); 
+0

我已更改,但警報未執行。 – Gerrit 2013-02-21 14:43:57