• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
    問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
    當前位置: 首頁 - 科技 - 知識百科 - 正文

    ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示)

    來源:懂視網 責編:小采 時間:2020-11-27 22:07:07
    文檔

    ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示)

    ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示):關于保存列表表頭的配置,一般我們不需要與后臺交互,直接保存在 localStorage 中就能滿足常規使用需求(需要瀏覽器支持)。 直接上代碼,插件: Ext.define('ux.plugin.ColumnCustom', { alias: 'plugin.columnCustom', xtyp
    推薦度:
    導讀ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示):關于保存列表表頭的配置,一般我們不需要與后臺交互,直接保存在 localStorage 中就能滿足常規使用需求(需要瀏覽器支持)。 直接上代碼,插件: Ext.define('ux.plugin.ColumnCustom', { alias: 'plugin.columnCustom', xtyp

    關于保存列表表頭的配置,一般我們不需要與后臺交互,直接保存在 localStorage 中就能滿足常規使用需求(需要瀏覽器支持)。

    直接上代碼,插件:

    Ext.define('ux.plugin.ColumnCustom', {
     alias: 'plugin.columnCustom',
     xtype: 'columnCustom',
     //初始化
     init: function (gridPanel) {
     var me = this;
     me.owner = gridPanel;
     //根據已有配置項設置表頭狀態
     me.setColumnConfig(gridPanel);
     gridPanel.on({
     columnschanged: me.saveColumnConfig,
     scope: me
     });
     },
     setColumnConfig: function (gridPanel) {
     var me = this,
     xtype = gridPanel.getXType(),
     currentColumnConfig = me.getCurrentColumnConfig(),
     columnConfig = currentColumnConfig[xtype],
     columns = gridPanel.getColumns();
     if (!columnConfig) return;
     columns.forEach(function (column) {
     var dataIndex = column.config.dataIndex;
     //只有常規列才有顯式的dataIndex,序號列等非常規列應排除在外
     if (!dataIndex) return;
     column.setHidden(columnConfig[dataIndex]);
     });
     },
     saveColumnConfig: function () {
     var me = this,
     gridPanel = me.owner,
     currentColumnConfig = me.getCurrentColumnConfig(),
     columns = gridPanel.getColumns(),
     xtype = gridPanel.getXType(),
     config = {};
     columns.forEach(function (column) {
     var dataIndex = column.config.dataIndex;
     //只有常規列才有顯式的dataIndex,序號列等非常規列應排除在外
     if (!dataIndex) return;
     config[dataIndex] = column.isHidden();
     });
     //使用xtype作為索引是相對可靠的做法
     currentColumnConfig[xtype] = config;
     //localStorage的值類型限定為string類型
     localStorage.setItem('columnConfig', Ext.encode(currentColumnConfig));
     },
     getCurrentColumnConfig: function () {
     var allColumnConfigString = localStorage.getItem('columnConfig'),
     allColumnConfig = Ext.decode(allColumnConfigString, true);
     return allColumnConfig || {};
     }
    });

    如何使用:由于這是一個比較常規的需求,因此這里默認給所有的gridPanel配置此插件,并支持手動配置參數禁用之,考慮復寫gridPanel類。

    代碼如下:

    Ext.define('override.grid.Panel', {
     override: 'Ext.grid.Panel',
     requires: ['ux.plugin.ColumnCustom'],
     columnCustomDisable: false,
     initComponent: function () {
     var me = this;
     me.callParent();
     //默認全部加上自動保存表頭插件,此處追加一個可配屬性來禁用此插件
     if (!me.columnCustomDisable) {
     me.addPlugin('columnCustom');
     }
     }
    });

    總結

    以上所述是小編給大家介紹的ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示),希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示)

    ExtJs使用自定義插件動態保存表頭配置(隱藏或顯示):關于保存列表表頭的配置,一般我們不需要與后臺交互,直接保存在 localStorage 中就能滿足常規使用需求(需要瀏覽器支持)。 直接上代碼,插件: Ext.define('ux.plugin.ColumnCustom', { alias: 'plugin.columnCustom', xtyp
    推薦度:
    標簽: 插件 表頭 extjs
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 久久国产精品一区二区| 成人国内精品久久久久影院VR | 精品九九人人做人人爱| 久久国产香蕉一区精品| 国产成人精品日本亚洲直接| 综合国产精品第一页| 精品91自产拍在线观看二区| 国产在视频线精品视频二代| 经典国产乱子伦精品视频| 亚洲精品国产日韩无码AV永久免费网 | 日本一区精品久久久久影院| 国产精品日本一区二区不卡视频| 亚洲精品无码专区2| 久久久久久国产精品无码下载 | 亚洲国产精品成人一区| 久久996热精品xxxx| 国产精品JIZZ在线观看老狼| 在线人成精品免费视频| 精品国产一区二区三区免费| 99国产精品久久久久久久成人热| 久久久久99精品成人片试看| 亚洲国产精品18久久久久久| 亚洲精品无码久久久久AV麻豆| 久久久久人妻一区精品| 精品国产热久久久福利| 国产精品欧美久久久久天天影视| 91精品视频在线| 91精品国产91热久久久久福利 | 69久久精品无码一区二区| 国产精品国产三级国产av品爱网 | 精品国产日产一区二区三区| 99国产精品无码| 99精品一区二区三区无码吞精 | 国产精品va无码一区二区| 国产综合精品女在线观看| 国产精品无码一区二区三级| 久久亚洲私人国产精品| 精品国产v无码大片在线观看| 国产亚洲欧美精品永久| 国产精品jizz视频| 久久99热精品|