Pasar un store de un treepanel a una variable store y un archivo json
Hola, tengo definido este Treepanel con un store ya cargado, el problema que tengo es que no se como sacar ese ejemplo del store a un archivo json
var tree = Ext.create('Ext.tree.Panel', {
id:'im-tree',
title: 'Online Users',
rootVisible:false,
region: 'west',
lines:false,
autoScroll:true,
tools:[{
type: 'refresh',
handler: function(c, t) {
tree.setLoading(true, tree.body);
var root = tree.getRootNode();
root.collapseChildren(true, false);
Ext.Function.defer(function() { // mimic a server call
tree.setLoading(false);
root.expand(true, true);
}, 1000);
}
}],
store: Ext.create('Ext.data.TreeStore', {
root: {
text:'Online',
expanded: true,
children:[{
text:'Friends',
expanded:true,
children:[
{ text:'Brian', iconCls:'user', leaf:true },
{ text:'Kevin', iconCls:'user', leaf:true },
{ text:'Mark', iconCls:'user', leaf:true },
{ text:'Matt', iconCls:'user', leaf:true },
{ text:'Michael', iconCls:'user', leaf:true },
{ text:'Mike Jr', iconCls:'user', leaf:true },
{ text:'Mike Sr', iconCls:'user', leaf:true },
{ text:'JR', iconCls:'user', leaf:true },
{ text:'Rich', iconCls:'user', leaf:true },
{ text:'Nige', iconCls:'user', leaf:true },
{ text:'Zac', iconCls:'user', leaf:true }
]
},{
text:'Family',
expanded:true,
children:[
{ text:'Kiana', iconCls:'user-girl', leaf:true, checked:false },
{ text:'Aubrey', iconCls:'user-girl', leaf:true, checked:false },
{ text:'Cale', iconCls:'user-kid', leaf:true, checked:false }
]
}]
}
})
});
return tree;
},
planteo este problema que tengo pues trabajo con EXT DESK y allí no me funciona el checked en el treepanel cuando traigo el arbol de un archivo php y mysql, encontre este ejemplo con esos datos ya dados pero quiero saber como colocarlos en un archivo json y como llamarlos.
Tendrías que usar un proxy en lugar de tenerlos hardcode.
Ext.define('MyApp.store.MyTreeStore',{
extend : 'Ext.data.TreeStore',
autoLoad : true, //Para cargar el store automáticamente
proxy : {
type : 'ajax',
url : 'path/to/your/data.json',
reader : {
type : 'json'
}
}
});
Saludos
Hola
Ya defini ello de la siguiente manera y no me visualiza el arbol
Ext.define('store_arboles',{
extend : 'Ext.data.TreeStore',
autoLoad : true, //Para cargar el store automáticamente
proxy : {
type : 'ajax',
url : '../cibac/modules/EnCampo/Client/arboles.json',
reader : {
type : 'json',
root: 'nodes'
}
}
});
var tree = Ext.create('Ext.tree.Panel', {
id:'im-tree',
title: 'Online Users',
rootVisible:false,
region: 'west',
lines:false,
autoScroll:true,
store: store_arboles
});
return tree;
},
este el el JSON que retorno
{
"nodes":[
{"name": "division1","id": "div1","subdivisions":[
{"name": "Sub1Div1","id": "div1sub1","schemes":[
{"name": "Scheme1","id": "scheme1"},
{"name": "Scheme2","id": "scheme2"}]},
{"name": "Sub2Div1","id": "div1sub2","schemes":[
{"name": "Scheme3","id": "scheme3"}]}
]}]
}
debo definir un model adicionalmente o no es necesario para los tree panel, porque no me visualiza el arbol. gracias....
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.