Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/extjs/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在EXTJS中显示后,最初隐藏的项不会出现在溢出菜单中_Extjs - Fatal编程技术网

在EXTJS中显示后,最初隐藏的项不会出现在溢出菜单中

在EXTJS中显示后,最初隐藏的项不会出现在溢出菜单中,extjs,Extjs,我有一个工具栏,其中的按钮在默认情况下是隐藏的,然后根据用户的权限显示。它们在我调用.show()后出现并运行,但在调整窗口大小时不会出现在溢出菜单中。最初显示的项目正确显示在溢出菜单中 关于如何解决这个问题有什么建议吗 谢谢 编辑:这是我能想出的一个最简单的例子,它可以和小提琴一起解决这个问题 我找到了一份工作 我将项目设置为最初可见,在渲染之前隐藏它们,然后在检查用户权限时再次显示它们。这将正确显示溢出菜单中的项目 看起来这是一个bug,不管是小bug。在更改项目可见性后尝试调用工具栏。尝试

我有一个工具栏,其中的按钮在默认情况下是隐藏的,然后根据用户的权限显示。它们在我调用.show()后出现并运行,但在调整窗口大小时不会出现在溢出菜单中。最初显示的项目正确显示在溢出菜单中

关于如何解决这个问题有什么建议吗

谢谢

编辑:这是我能想出的一个最简单的例子,它可以和小提琴一起解决这个问题

我找到了一份工作

我将项目设置为最初可见,在渲染之前隐藏它们,然后在检查用户权限时再次显示它们。这将正确显示溢出菜单中的项目


看起来这是一个bug,不管是小bug。

在更改项目可见性后尝试调用工具栏。尝试过,但似乎没有任何作用。我还尝试了updateLayout()。是否可以提供一个示例?显然,在我拥有10个声誉之前,我无法发布图像。在代码方面真的没有什么可以展示的。按钮的隐藏配置设置为true,如果(response.ROLE=='Admin'){button1.show();},则为。这样,按钮就可以毫无问题地显示在工具栏上。这就是问题的全部内容。试着使用
Ext.onReady(function(){

var toolbar1 = Ext.create('Ext.toolbar.Toolbar', {
    region: 'north',
    layout: {
            overflowHandler: 'Menu'
        },
    items: [{
        xtype: 'textfield',
        emptyText: 'FIX ME'
    },{
        xtype: 'button',
        text: 'Test Lists',
        id: 'testListsButton',
        hidden: true
    },{
        xtype: 'button',
        text: 'All Lists',
        id: 'allListsButton',
    },{
        xtype: 'button',
        text: 'Other Lists',
        id: 'otherListsButton',
        hidden: true
    },{
        xtype: 'button',
        text: 'Email Lists',
        id: 'emailListsButton',
        hidden: true
    }]
});

Ext.getCmp('emailListsButton').show();
Ext.getCmp('otherListsButton').show();
Ext.getCmp('testListsButton').show();


    var viewPort = Ext.create('Ext.container.Viewport', {
        layout: 'border',
        autoRender: true,
        items: [
            toolbar1
        ]
    });
})