Как изменить шаблон элемента Ext.list.Tree в ExtJS6


person serg    schedule 09.02.2016    source источник


Ответы (1)


Шаблона нет, так как это легковесный компонент. Вы можете изменить Ext.list.TreeItem.element в соответствии с вашими потребностями, используя переопределение. Вы можете попробовать ли

reference: 'textElement',
tag:'a',
cls: Ext.baseCSSPrefix + 'treelist-item-text'

было бы достаточно.

Вы также можете определить производный TreeListItem:

Ext.define('MyTreeItem',{
    extend:'Ext.list.TreeItem',
    xtype:'mytreelistitem',
    element: {
        ... // Copy from Ext source and extend to your needs.
    },
    privates:{
        doNodeUpdate:function(node) {
            this.callParent(arguments);
            // href update code goes here, e.g.:
            var textElement = this.textElement;
            textElement.dom.href = node.data["myHref"]; // or similar
        }
    }
});

а затем вы можете указать своему дереву использовать его:

Ext.create('Ext.list.Tree',{
    config:{
        defaults:{
            xtype:'mytreelistitem'
        }
    }
});
person Alexander    schedule 09.02.2016
comment
Спасибо, но я не уверен, как переопределить элемент дерева из списка деревьев. Также есть ли способ указать ему использовать значение записи как href? - person serg; 10.02.2016