Good day.

I am currently trying trees of ExtJs 6.2 in both modern and classic toolkits.
In modern toolkit I've got my tree Ext.tree.Panel working just fine, but my try to create Ext.dataview.NestedList with the same model and store is a failure. It mixes parent nodes with childs ones on expansion, and overall it looks like it doesn't clean up something in the store.
The thing is: I am trying to gradually load my store from the server via proxy with json reader. Is it possible now, or is this answer still actual, along with this? Or maybe I am doing something wrong?

The code follows. Controller is pretty much empty, thus is not shown here.

Store:
Code:
Ext.define('Site.widgets.tree.TreeStore', {
    extend: 'Ext.data.TreeStore',
    model: 'Site.widgets.tree.TreeModel',
    requires: 'Site.widgets.tree.TreeModel',
    nodeParam: 'path',
    
    proxy: {
        type: Site.cfg.proxy.type,
        method: 'GET',
        useDefaultXhrHeader: false,
        reader: {
            type: 'json',
            rootProperty: function(data){
                // Extract child nodes from the items or children property in the dataset
                return data['children'] || (data.data ? data.data['children'] : null);
            },
            successProperty: 'error',
            keepRawData: true // needed to store error section
        },
        format: Site.cfg.proxy.urlEnd, //
        url: Site.cfg.url.getTreeNode   //REST API address
    }
});
Model:
Code:
Ext.define('Site.widgets.tree.TreeModel', {
    extend: 'Ext.data.TreeModel',
    idProperty: 'full_path',

    fields: [
        {
            name: 'full_path',
            type: 'string',
            convert: undefined
        }, {
            name: 'display-name',
            type: 'string',
            convert: function(value, record) {
                ...
            }
        },{
            name: 'leaf',
            type: 'boolean',
            convert: function(value, record) {
                ...
            }
        }
    ]     
});
View:
Code:
Ext.define('Site.widgets.tree.TreeView', {
    extend: 'Ext.dataview.NestedList',
    xtype: 'cfg-tree',
    store: Ext.create('Site.widgets.tree.TreeStore'),
    controller: 'tree',
    layout: 'fit',
    displayField: 'display-name',

    initialize: function () {
        var me = this;
        me.callParent();
        me.setHeight();{
            me.getStore().setRoot({
                full_path: '/',//Site.config.Runtime.config.cfgTree.profilePath,
                'display-name': Site.config.Runtime.config.profile.displayName,
                expanded: true // same as calling me.getStore().load();
            });
        }
    }
});
What I get from server:
Code:
{
data:{
display-name: "Item1",
full_path: "/Tree/Folder/Item1",
children: [
{
full_path: "/Tree/Folder/Item1/SubItem1", display-name: "SubItem1", ...
}, ...
]
},
error: {code: "0", msg: null}
}