Angular ngx-translate在ag-grid标头中返回对象promise

问题描述

我正在尝试使用ngx-translate在ag-grid中转换标头名称,为此,我已将键从grid列传递给了一个函数,该函数将返回如下所示的promise。

this.columnDefs = [
  {
    headerName: 'S.No',translateKey: 'DEVICES.LIST.SNO',width: 1000,resizable: false,sortable: false,suppressSizetoFit: true,valueGetter: (args) => this.getId(args),checkBoxSelection: (params) => {
      return params.columnApi.getRowGroupColumns().length === 0;
    },headerCheckBoxSelection: (params) => {
      return params.columnApi.getRowGroupColumns().length === 0;
    },headerValueGetter: this.localizeHeader.bind(this)
  },];

localizeHeader函数

localizeHeader = async(params: any) => {
  const translatedText = await this.translateHeader(params.colDef.translateKey);
  return translatedText;
}

translateHeader函数

  translateHeader(key: string) {
    return new Promise((resolve) => {
      this.translateService.get(key).subscribe((value) => {
        resolve(value);
      });
    });
  }

但是当我运行该应用程序时,我得到的输出如下所示

enter image description here

当我检查翻译后的字符串的日志是否正确返回时,我不知道我在哪里错了。

即使我尝试使用

translate.instant('LIST.SNO')

显示键而不显示值。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)