Javascript 角度UI网格:在columnDefs中添加自定义字段并从标题模板访问它
我想在columnDefs中添加一些自定义字段,并想从标题模板访问它。 例如,我想要一个字段,比如showFileJavascript 角度UI网格:在columnDefs中添加自定义字段并从标题模板访问它,javascript,angularjs,angular-ui-grid,Javascript,Angularjs,Angular Ui Grid,我想在columnDefs中添加一些自定义字段,并想从标题模板访问它。 例如,我想要一个字段,比如showFile $scope.gridOptions.columnDefs = [ { name: 'ServiceID', displayName: 'Service', showFile: some data }] 并希望访问头模板内的sh
$scope.gridOptions.columnDefs = [
{
name: 'ServiceID',
displayName: 'Service',
showFile: some data
}]
并希望访问头模板内的showFile
<div class="ui-grid-top-panel" style="text-align: center">
{{ want to access 'showFile' }}
</div>
{{要访问“showFile”}
最好的方法是什么。因为我已经尝试过使用自定义方法作为
<div class="ui-grid-top-panel" style="text-align: center">
{{grid.appScope.letter()}}
</div>
{{grid.appScope.letter()}
(plnkr链接,
)但是,函数(grid.appScope.letter())被调用了无数次。我已经提出了这个问题,但没有得到任何答复。任何人都可以建议实现上述任务的最佳方法。要访问其中的showFile,您是否尝试过
{{grid.appScope.gridOptions.columnDefs[0].showFile}}
我编辑了plnkr:
我不确定您是否希望这样做,我在columnDefs对象中使用了headerCellTemplate,而不是headerTemplate,然后您可以使用:{{col.colDef.showFile}进行访问
columnDefs: [{
field: 'name',
displayName: 'First Name',
width: 90
}, {
field: 'title',
displayName: 'Last Name',
width: 80
}, {
field: 'test',
displayName: 'test',
width: 80,
showFile: 'FILE',
headerCellTemplate: '<div ng-class="{ \'sortable\': sortable }">' +
'<div class="ui-grid-cell-contents" col-index="renderIndex" title="TOOLTIP">' +
'<span>{{ col.displayName CUSTOM_FILTERS }}</span><br /><span>{{col.colDef.showFile}}</span>' +
'<span ui-grid-visible="col.sort.direction" ng-class="{ \'ui-grid-icon-up-dir\': col.sort.direction == asc, \'ui-grid-icon-down-dir\': col.sort.direction == desc, \'ui-grid-icon-blank\': !col.sort.direction }">' +
' ' +
'</span>' +
'</div>' +
'<div class="ui-grid-column-menu-button" ng-if="grid.options.enableColumnMenus && !col.isRowHeader && col.colDef.enableColumnMenu !== false" ng-click="toggleMenu($event)" ng-class="{\'ui-grid-column-menu-button-last-col\': isLastCol}">' +
'<i class="ui-grid-icon-angle-down"> </i>' +
'</div>' +
'<div ui-grid-filter></div>' +
'</div>'
}
columnDefs:[{
字段:“名称”,
displayName:“名字”,
宽度:90
}, {
字段:“标题”,
displayName:“姓氏”,
宽度:80
}, {
字段:“测试”,
displayName:'测试',
宽度:80,
showFile:'文件',
HeaderCell模板:“”+
'' +
“{col.displayName CUSTOM_FILTERS}}
{{{col.colDef.showFile}”+
'' +
' ' +
'' +
'' +
'' +
' ' +
'' +
'' +
''
}
尝试使用renderIndex。这将为您提供列的索引
{{grid.appScope.gridOptions.columnDefs[renderIndex].customField}}