显示隐藏工具栏项目

时间:2016-04-04 10:22:34

标签: extjs toolbar extjs6

我有一个工具栏,其中包含一个按钮,如下所示

{ text: 'Save', tooltip: 'Save report', iconCls: 'some-cls', handler: 'somehandler' }

我想在某些条件下隐藏此按钮。

为此我得到工具栏项目并隐藏/显示项目如下。

showHideToolbarItems: function(titles)
{
    tbarItems = getToolbarItems(); // Getting items successfully
    for (var i = 0, len = tbarItems.count; i < len; i++) {
        var item = tbarItems.itemAt(i);
        if (titles.indexOf(item.text) > -1)
        {
            item.setVisible(false); 
        }
    }
}

我将此功能称为showHideToolbarItems(['Save']);
但我收到错误 setvisible不是一个函数。

我在这里做错了什么

1 个答案:

答案 0 :(得分:2)

您可以添加对按钮的引用,以便更快地访问和正确接近

{ 
    text: 'Save',
    reference: 'saveBtn',
    tooltip: 'Save report',
    iconCls: 'some-cls',
    handler: 'somehandler'
}

并在viewController中:

showHideToolbarItems: function(titles)
{
    var view = this.getView(),
        saveButton = view.lookupReference('saveBtn');

        saveButton.hide();
        //saveButton.show();
}