首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ui-grid: global/defaul columnDef

ui-grid: global/defaul columnDef
EN

Stack Overflow用户
提问于 2016-04-22 10:19:33
回答 1查看 228关注 0票数 1

我希望为所有列启用headerTooltip,并且不希望对不同表的所有列重复此操作。

是否有一种方法来设置全局columnDef或覆盖默认值?

如果没有全局方法的话,我也有兴趣在每个表的基础上这样做。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-11-10 05:03:55

自定义任何角组件的最佳方法是查看源代码,然后编写一个装饰器,您的应用程序可以在这里修改组件,而不需要对组件源代码进行黑客攻击。在这种情况下,我们可以看到,我们需要更改GridColumn.prototype.updateColumnDef函数,它将设置从列def复制到列本身。我们安装自己的默认值(如果未定义),然后让未修改的方法执行它的操作。这样,新的全局默认值仍然可以在单个网格中被覆盖。

代码语言:javascript
复制
angular.module(name).config(
    $provide => {
        $provide.decorator('GridColumn', $delegate => {
            const {updateColumnDef} = $delegate.prototype;
            $delegate.prototype.updateColumnDef = function(colDef, isNew) {
                if(colDef.headerTooltip === undefined)
                    colDef.headerTooltip = true;
                updateColumnDef.call(this, colDef, isNew);
            };
            return $delegate;
        });
    }
});
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36791108

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档