web-dev-qa-db-ja.com

ag-gridで「NoRowsToShow」メッセージを翻訳する方法は?

ユーザーが選択した言語に基づいてag-gridで「NoRowsToShow」メッセージを翻訳するにはどうすればよいですか?

こんなに疲れました。

gridOptions: GridOptions = <GridOptions> {
        rowSelection: 'single',
        enableColResize: true,
        enableSorting: true,
        enableFilter: true,
        suppressCellSelection: true,

        overlayNoRowsTemplate: '<span style="padding: 10px; border: 2px solid #444; background: lightgoldenrodyellow;">'+.......+'</span>'
    };

その場所に何かを追加する必要があります。

7
nikesh

国際化セクション によると、次のようにこの値をgridOptionsに指定できるはずです。

gridOptions: GridOptions = <GridOptions> {
        rowSelection: 'single',
        enableColResize: true,
        enableSorting: true,
        enableFilter: true,
        suppressCellSelection: true,

        localeText: {noRowsToShow: 'No hay nada'}
    };

それは一般的にag-gridのためにI18Nに取り組む方法です。

より具体的には、ユーザーが選択した言語に基づいてこの動作を制御する方法に関して質問したことに対して、次のようなことを行う必要があります(選択した言語を保持する変数が既に設定されていると想定しています)。

function internationalization (){
    return selectedLanguageVariable === 'es'/*or whatever code you use for spanish*/ ? {noRowsToShow: 'No hay nada'} : {noRowsToShow: 'No Rows'}
}

gridOptions: GridOptions = <GridOptions> {
    rowSelection: 'single',
    enableColResize: true,
    enableSorting: true,
    enableFilter: true,
    suppressCellSelection: true,

    localeText: internationalization()
};
13
Jarod Moser

このパラメータをグリッドHTMLに配置します。

[overlayNoRowsTemplate] = "overlayNoRowsTemplate";

クラスで宣言する:

private overlayNoRowsTemplate;

コンストラクターを呼び出す

this.overlayNoRowsTemplate = "<span>This is a custom 'no rows' overlay</span>";
4
Ricardo Sena