【问题标题】:Ui-Grid header - Add Icon in last header-columnUi-Grid 标题 - 在最后一个标题列中添加图标
【发布时间】:2015-12-07 18:48:28
【问题描述】:

我以为会很简单,但结果并非如此。或者至少,我做错了什么,我不知道是什么。

让我解释一下我要做什么:

如果我有我的网格,我想在网格的右上角有一个“加号/添加”图标。所以我想,我编辑headerTemplate,这就是我卡住的地方。这就是我现在拥有 headerTemplate 的方式:

<div role="rowgroup" class="ui-grid-header"> <!-- theader -->
<div class="ui-grid-top-panel">
    <div class="ui-grid-header-viewport">
        <div class="ui-grid-header-canvas">
            <div class="ui-grid-header-cell-wrapper" ng-style="colContainer.headerCellWrapperStyle()">
                <div role="row" class="ui-grid-header-cell-row">
                    <div class="ui-grid-header-cell ui-grid-clearfix" ng-repeat="col in colContainer.renderedColumns track by col.uid" ui-grid-header-cell col="col" render-index="$index">
                    </div>
                    <div class="ui-grid-header-cell ui-grid-clearfix">Icon</div>
                </div>
            </div>
        </div>
    </div>
</div>

这“添加”了 div,但它不适合网格,它将它放在外面。如何添加一个被识别为列的列,其中只有图标。

我知道我可以使用 gridOptions 来做到这一点,并且只需添加另一个没有数据的字段,但我希望这个应用程序广泛,所以我真的很喜欢这个作为模板。老实说,ui-grids 的模板方式让我感到困惑。任何帮助将不胜感激!

如果我不清楚,请告诉我,我会尽力澄清。

【问题讨论】:

  • 为什么不使用标题单元格模板?
  • 因为我不喜欢在最后一列的所有控制器中设置该模板,所以我在应用程序的多个位置使用相同的网格。如果我想得太多了,请纠正我。

标签: javascript angularjs angular-ui-grid


【解决方案1】:

我找到了解决方法:

<div role="rowgroup" class="ui-grid-header"> <!-- theader -->
    <div class="ui-grid-top-panel">
        <div class="ui-grid-header-viewport">
            <div class="ui-grid-header-canvas">
                <div class="ui-grid-header-cell-wrapper" ng-style="colContainer.headerCellWrapperStyle()">
                    <div role="row" class="ui-grid-header-cell-row">
                        <div class="ui-grid-header-cell ui-grid-clearfix"
                             ng-repeat="col in colContainer.renderedColumns track by col.uid" ui-grid-header-cell
                             col="col" render-index="$index">
                        </div>

                        <div role="button"
                             class="ui-grid-column-menu-button"
                             ng-click="addRecord()"
                             ng-class="{'ui-grid-column-menu-button-last-col': isLastCol}"
                             ui-grid-one-bind-aria-label="i18n.headerCell.aria.columnMenuButtonLabel"
                             aria-haspopup="true">
                            <span class="material-icons" style="padding: 5px; cursor:pointer;">add</span>
                        </div>

                    </div>
                </div>
            </div>
        </div>
    </div>
</div>

我使用ui-grid-column-menu-button 类来显示我自己的图标。这就像一个魅力,不幸的是你使用了网格菜单的功能。我在其他地方有我的菜单,所以这对我来说很有效。

这是最终结果:

【讨论】:

    猜你喜欢
    • 2022-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-02-23
    • 1970-01-01
    • 2023-03-30
    • 1970-01-01
    相关资源
    最近更新 更多