ext tree 非同步載入取消自動載入功能。
阿新 • • 發佈:2019-01-03
今天在一個面板上面嵌套了一個treepanel,需要得到當前的id後傳送到後天獲取值,這時候就不要treestore的自動載入了,我是用到非同步載入的。
解決辦法把下面程式碼註釋掉:
Ext.define("Sharera.system.store.directory.UnitTree",{ extend:'Ext.data.TreeStore', model: 'Sharera.system.model.directory.DirectoryTree', nodeParam : 'id', autoLoad : false, autoSync : false, /* root: { expanded : false }, proxy : { type : 'ajax', url : '../../api/unit/treecheck.json?type=unit', reader : { type : 'json' }, writer: { type: 'json' } },*/
當我們啟動windows之前:
var pId=self.getTreeNodeId(record.parentNode.get('id')); var store=Ext.getStore('directory.UnitTree'); store.setProxy({ type : 'ajax', url : '../../api/unit/tree.json?type=user2unit&uid='+self.getTreeNodeId(record.get("id")), reader : { type : 'json' }, writer: { type: 'json' } }); store.load(); var id=self.getTreeNodeId(record.get("id")); var editForm=Ext.widget('userformedit',{title:"編輯使用者"}); var formObj=editForm.down('form').getForm(); var userStore=Ext.create('Sharera.system.store.directory.User'); userStore.setUrlforForm(id); userStore.load( { scope: this, callback: function(records, operation, success) { formObj.loadRecord(records[0]); } } );