PDA

View Full Version : ExtJs-4.2: LazyFill Tree



offshoreteam
4 Jun 2013, 3:28 AM
We are trying to fill Sencha tree with LazyFill store. However, it is not working as expected.

Problems faced:
1. All root not not expanding
2. Adding duplicate items
a. Considering we have only two root in a tree and both has childs.
b. Click on any root node to expand. It will show childs of the node.
c. Click on another root node to expand, it will show childs node and adds duplicate item to the other root node which is already expanded.
3. Follow 2nd step and then click any root node to collapse, It does not collapse and also does not show the child items.. Click on other root node to collapse, now both root node are collapsed.

Below is the code, we are using...




var store = Ext.create('Ext.data.TreeStore', {
proxy: {
type: 'ajax',
api: {
read: '/Home/LoadMaterialsTree',
},
reader: 'json'
},
lazyFill: true
});

Ext.create('Ext.tree.Panel', {
title: 'Forum Folder Summary',
width: 600,
height: 400,
renderTo: Ext.getBody(),
collapsible: true,
loadMask: false,
multiSelect: true,
useArrows: true,
rootVisible: false,
store: store,
animate: true,
plugins: [{
ptype: 'bufferedrenderer'
}]
});



Thanks,

slemmon
6 Jun 2013, 10:50 AM
lazyFill may be used internally, but I don't think I'd use it in a project. It's not a public config for sure.

Have you looked at the example here - at what is sent / received with each request to the server as nodes are expanded to make sure what you're doing on the server-side is what the client is expecting?
http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/build/KitchenSink/ext-theme-neptune/#tree-xml

firegun
12 Jun 2013, 12:34 PM
Hello guys,



lazyFill may be used internally, but I don't think I'd use it in a project. It's not a public config for sure.


If that is true so you should not put it on framework examples:
http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/tree/buffer-rendered-treegrid.html

http://docs.sencha.com/extjs/4.2.1/extjs-build/examples/tree/locking-buffer-rendered-treegrid.html

So I believe itīs not just an internally used property. In fact itīs an undocumented property, and because of that itīs use is complicated.

We implementing it here too, facing some problems, when trying to iterate over loaded nodes that are not shown (not yet expanded). They are not avaliable as children of existing nodes, nor are on the store (not in a regular way, you canīt find it with store.getById())...

Based in it, I would suggest Sencha to properly document this, or remove those examples and pretend they were never there.... I hope you guys choose the former.