您好, 为了管理用户访问,我需要禁用加载一些项目,在视口中,我现在用“隐藏”属性隐藏它们,但是我无法阻止这些项目的后台处理,例如服务器请求
如何禁用特定项目的加载。
这是我的视口代码
var notAllowAdmin=true; //init access rule gere for admin panel
Ext.define('eFinances.view.Viewport', {
extend: 'Ext.container.Viewport',
requires: [
'Ext.layout.container.Border'
],
layout: 'border',
items: [
{
xtype: 'eFinancesToolbar',
region: 'north'
},
{
title: 'Navigation',
region: 'west',
collapsible: true,
split: true,
width: 200,
minWidth: 175,
maxWidth: 400,
animCollapse: true,
margins: '0 0 0 5',
layout: 'accordion',
items: [{
xtype:'menuTresorerie',
title: 'Trésoreries',
iconCls: 'balance' // see the HEAD section for style used
},{
xtype:'menuAchat',
title: 'Achat et fournisseurs',
iconCls: 'depense' // see the HEAD section for style used
}, {
xtype:'menuVente',
title: 'Ventes et clients',
iconCls: 'recette'
}, {
xtype:'menuAdmin',
hidden :notAllowAdmin, // hide items if not allowed
title: 'Administration',
iconCls: 'administration'
}]
},
{
region: 'center',
title: 'work area'
}
]
});
目前我用管理面板隐藏了带有规则访问初始化的notAllowAdmin变量,但是执行了整个后台进程,有些可以告诉我如何继续完全停用面板加载或者让我最好的想法(管理用户访问权限)
问候
答案 0 :(得分:2)
您可以停止向items数组添加隐藏组件。例如:
items: [
{
xtype:'menuTresorerie',
title: 'Trésoreries',
iconCls: 'balance' // see the HEAD section for style used
},
{
xtype:'menuAchat',
title: 'Achat et fournisseurs',
iconCls: 'depense' // see the HEAD section for style used
},
{
xtype:'menuVente',
title: 'Ventes et clients',
iconCls: 'recette'
}
].concat(notAllowAdmin ? [] : [
{
xtype:'menuAdmin',
title: 'Administration',
iconCls: 'administration'
}
]);
但是你应该注意到这应该仅作为优化进行处理,并且应该在服务器端实现真正的访问控制。