Angularjs ng网格单元模板和分组:我可以更改';分组';一行
我一直在检查ng grid,并将columnDefs更改为对某些列使用不同的cellTemplate。此模板不显示实际值,而是在另一个对象中查找,以便最终用户更容易阅读(基本上是一个外键id,它被转换为人类可以理解的内容) 当我在gridOptions中启用showGroupPanel:true时,您可以将一列拖动到“分组”栏,结果将被分组 当我对其中一列编辑模板时,它不使用我的cellTemplate,并再次显示id 是否有办法确保,在组的标题中,我可以使用自己的模板,而不是只显示值的ng grid [更新] 一些代码(简化为1列以仅显示其本质)可能更容易理解(任何代码错误都是打字错误,这不是我真实代码的复制粘贴): HTML: )) 您可以替换此:Angularjs ng网格单元模板和分组:我可以更改';分组';一行,angularjs,ng-grid,celltemplate,Angularjs,Ng Grid,Celltemplate,我一直在检查ng grid,并将columnDefs更改为对某些列使用不同的cellTemplate。此模板不显示实际值,而是在另一个对象中查找,以便最终用户更容易阅读(基本上是一个外键id,它被转换为人类可以理解的内容) 当我在gridOptions中启用showGroupPanel:true时,您可以将一列拖动到“分组”栏,结果将被分组 当我对其中一列编辑模板时,它不使用我的cellTemplate,并再次显示id 是否有办法确保,在组的标题中,我可以使用自己的模板,而不是只显示值的ng g
var colDef1 = { 'field': 'Topic' };
colDef1.cellTemplate = '<label ng-class="\'colt\' + col.index" class="ng-pristine ng-valid colt3" style="width: 90%" >{{topicid_fkvalues[ COL_FIELD ]}} ({{COL_FIELD}})</label>';
var colDef1 = { 'field': 'Topic' };
colDef1.cellTemplate = '<label ng-class="\'colt\' + col.index" class="ng-pristine ng-valid colt3" style="width: 90%" >{{topicid_fkvalues[ COL_FIELD ]}} ({{COL_FIELD}})</label>';
它将添加第二个参数为$scope.topicidfkuvalues的筛选器(此筛选器也将在“聚合”视图中使用)。因此,如果您有具有不同翻译的不同列,您仍然可以使用相同的筛选器,但可以为翻译使用多个范围变量
希望这是有意义的,并帮助一些可能有相同问题的人…解决方案 我想我找到了一个很好的解决办法 结果证明我不需要细胞模板,只需要一个过滤器 因此,如果您在模块上定义了一个新过滤器,如下所示:
app.filter(
'translateForeignKey',
function() {
return function( fk, fkValues ) {
return fkValues[ fk ];
}
;
}
app.filter(
'translateForeignKey',
function() {
return function( fk, fkValues ) {
return fkValues[ fk ];
}
;
}
))
您可以替换此:
var colDef1 = { 'field': 'Topic' };
colDef1.cellTemplate = '<label ng-class="\'colt\' + col.index" class="ng-pristine ng-valid colt3" style="width: 90%" >{{topicid_fkvalues[ COL_FIELD ]}} ({{COL_FIELD}})</label>';
var colDef1 = { 'field': 'Topic' };
colDef1.cellTemplate = '<label ng-class="\'colt\' + col.index" class="ng-pristine ng-valid colt3" style="width: 90%" >{{topicid_fkvalues[ COL_FIELD ]}} ({{COL_FIELD}})</label>';
它将添加第二个参数为$scope.topicidfkuvalues的筛选器(此筛选器也将在“聚合”视图中使用)。因此,如果您有具有不同翻译的不同列,您仍然可以使用相同的筛选器,但可以使用多个范围变量进行翻译。您好,欢迎使用So,请提供一些您尝试过的代码示例,然后我们可以帮您。您是否也签出了aggregateTemplate?相关的SO帖子是:并且他们为分组行添加了
选项.aggregateTemplate
var colDef1 = { 'field': 'Topic' };
colDef1.cellTemplate = '<label ng-class="\'colt\' + col.index" class="ng-pristine ng-valid colt3" style="width: 90%" >{{topicid_fkvalues[ COL_FIELD ]}} ({{COL_FIELD}})</label>';
var colDef1 = { 'field': 'Topic' };
colDef1.cellFilter = 'translateForeignKey: topicid_fkvalues';