当我使用“$ filter('translate')('HostName')”设置headerName或displayName时,如下所示

export default (($filter, modalHelper, $translate) => [{
    displayName:$filter('translate')('HostName'),
    headerCellFilter: 'translate',
    headerFilter:'translate',
    field: 'name',
    width: 130,
    filter: 'text'}]


const en = {
    'HEADLINE': 'This is a test',
    'HostName': 'This is Host Name',
    'IPAddress': 'IP Address'}

export default {
   en
}


const cn = {
    'HEADLINE': '这是一个测试',
    'HostName': '主机名',
    'IPAddress': 'IP 地址'
}

export default {
   cn
}

headerName只能显示一次,不能动态更改,当我运行changeLanguage函数时,像下面这样
function changeLanguage() {
  $translate.use($scope.lang)
  })
}
$scope.langs = ['English', '中文(简体)'];
$scope.lang = '中文(简体)';

$translateProvider.translations('English', translateEN.en)
  .translations('中文(简体)', translateCN.cn)
  .preferredLanguage('中文(简体)') // 默认 EN

是否有解决方案?
谢谢。

最佳答案

Seems可以用headerValueGetter完成

使用headerValueGetter而不是colDef.headerName允许动态 header 名称。

headerValueGetter函数中,您可以处理翻译

关于ag-grid - 如何设置ag-grid headerName进行翻译,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/50655919/

10-09 17:57