0

こんにちは、ユーザー アクセスを管理するために、一部のアイテムの読み込みを無効にする必要があります。今のところ、ビューポートで「hidden」プロパティを使用してそれらを非表示にしていますが、サーバー リクエストなど、このアイテムのバックグラウンド処理を防ぐことはできません

特定のアイテムの読み込みを無効にする方法を教えてください。

これは私のビューポートコードです

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 変数を使用して管理パネルを非表示にしますが、バックグラウンド プロセス全体が実行されます。パネルの読み込みを完全に無効にする方法を教えてくれる人もいれば、これを行うための最良のアイデアを教えてくれる人もいます (ユーザー アクセスの管理)。

よろしく

4

1 に答える 1

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'
    }
]);

ただし、これは最適化としてのみ処理する必要があり、真のアクセス制御はサーバー側で実装する必要があることに注意してください。

于 2013-11-13T10:51:13.137 に答える