【问题标题】:Ag-grid custom tooltip is not working for grid cellsAg-grid 自定义工具提示不适用于网格单元
【发布时间】:2020-12-02 17:18:09
【问题描述】:

我想在项目中使用 ag-grid 自定义工具提示。我根据 ag-grid https://www.ag-grid.com/javascript-grid-tooltip-component/ 的文档为工具提示制作了一个 js 组件,并将其分配给 this.gridOptions = config。自定义工具提示功能在列标题悬停时被调用,但它不在单元格悬停上且不显示工具提示。如果有人知道我在这里缺少什么,请指导我。

示例代码:

prepareConfig() {

        config.enableBrowserTooltips = false;
        config.defaultColDef= {
            sortable: true,
            tooltipComponent: 'customTooltip'
        },
        
        function CustomTooltip() {}
        CustomTooltip.prototype.init = function (params) {
            var eGui = (this.eGui = document.createElement('div'));
            let color = 'white';
            let data = params.rowIndex >= 0 ? params.api.getDisplayedRowAtIndex(params.rowIndex).data : params.value;

            eGui.style['background-color'] = color;
            if (data.subtitle) {
            eGui.classList.add('custom-tooltip');   
            eGui.innerHTML =
                '<div><div class="custom-tooltip-title">' + data.col1 + '</div><div  class="custom-tooltip-body">' +
                data.subtitle + '</div></div>';
             } else {
                eGui.classList.add('ag-tooltip');
                eGui.innerHTML = '<div>' + data.col1 + '</div>';
             }
        };

        CustomTooltip.prototype.getGui = function () {
            return this.eGui;
        };
        config.components = {
            customTooltip: CustomTooltip
        }

        return config;
}  

CSS

.custom-tooltip {
            position:absolute;
            box-shadow: 3px 3px 3px 0px #b9b9b9;
            border: 1px solid #c3c3c3;
            padding:5px;
            .custom-tooltip-title {
              font-weight:bold;
            }
            .custom-tooltip-body {
              margin-top:5px;
            }
        }
        
        .ag-tooltip {
            font-size: 13px;
            box-shadow: 3px 3px 3px 0px #b9b9b9;
            border: 1px solid #c3c3c3;
            padding: 5px;
            background:white;
        }

附上网格表截图供参考 grid table

【问题讨论】:

    标签: javascript angular8 ag-grid ag-grid-angular ag-grid-react


    【解决方案1】:

    修复了 columnDefs 中缺少“tooltipField”的问题。

    columnDefs = [ { tooltipField: 'col1', }]

    【讨论】:

      猜你喜欢
      • 2019-07-03
      • 2020-05-14
      • 2020-09-23
      • 2017-10-25
      • 2020-08-12
      • 2019-09-13
      • 2018-02-10
      • 2021-07-14
      • 1970-01-01
      相关资源
      最近更新 更多