Показать сообщение отдельно
  #3 (permalink)  
Старый 28.11.2018, 14:05
Аспирант
Отправить личное сообщение для Ambassador Посмотреть профиль Найти все сообщения от Ambassador
 
Регистрация: 12.11.2015
Сообщений: 68

Сообщение от siber-biber Посмотреть сообщение
вызывайте collapse (https://docs.sencha.com/extjs/6.5.2/...ethod-collapse) на записях которые должны остаться отображаемыми.
{
                            text: 'Collapse All',
                            handler:function()
    						{
                                var nodesToCollapse = me.getStore().getRoot().childNodes;
                        
                                Ext.each(nodesToCollapse, function (node) {
                                    node.collapse();
                                });
                            }
                        }
siber-biber - Спасибо

Что касаемо второго вопроса: "как можно реализовать скрытие дерева в handler кнопки, если она будет находиться не в initComponent: function()?", то сделал так:
{
        text: 'Развернуть',
        handler : function(button, e) {
        var tree    = button.up('questiontree')    
        tree.expandAll()
    	tree.resumeLayouts(true)  
            
    }
    },
    {
        text: 'Свернуть',
        handler:function(button, e)
        {
            var tree    = button.up('questiontree')
            var nodesToCollapse = tree.getStore().getRoot().childNodes
            Ext.each(nodesToCollapse, function (node) {
                node.collapse();
            });
            console.log(node)
        }
    }

Работает, но при нажатии на "Развернуть" в консоли предупреждение:
Mismatched call to resumeLayouts - layouts are currently not suspended

пер. Несоответствие вызова resumeLayouts - макеты в настоящее время не приостановлены .

При нажатии на "Свернуть" ошибка:
ReferenceError: node is not defined


Почему возникает предупреждение и ошибка?
Ответить с цитированием