Localization (i18n) Guide
Material React Table has full support for localization (i18n). Some locales are included by default, but if your language is not yet supported, you can still easily add your own custom translations to the localization
prop.
Relevant Props
# | Prop Name | Type | Default Value | More Info Links | |
---|---|---|---|---|---|
1 |
| Localization (i18n) Guide | |||
Built-in Locales
The following locales are included and can be imported from 'material-react-table/locales/'
:
cs
, de
, en
, es
, fa
, fr
, it
, nl
, ja
, pl
, pt
, pt-BR
, ro
, ru
, tr
, vi
If your language is not yet supported, please consider making a PR to add it to the library! See here on GitHub.
Built-in Locale Examples
Scroll and find your language below to see an example of how to use it.
Acciones | Seleccionar | Primer nombre | Apellido | Años |
---|---|---|---|---|
Kevin | 26 | |||
Theodore | 28 | |||
Tanner | 33 |
1import React, { FC } from 'react';23//Import Material React Table and its Types4import MaterialReactTable, { MRT_ColumnDef } from 'material-react-table';56//Import Material React Table Translations7import { MRT_Localization_ES } from 'material-react-table/locales/es';89//mock data10import { data, Person } from './makeData';1112const columns: MRT_ColumnDef<Person>[] = [13 //column definitions...28];2930const Example: FC = () => {31 return (32 <MaterialReactTable33 columns={columns}34 data={data}35 enableColumnFilterModes36 enableColumnOrdering37 enableEditing38 enablePinning39 enableRowActions40 enableRowSelection41 enableSelectAll={false}42 initialState={{ showColumnFilters: true, showGlobalFilter: true }}43 localization={MRT_Localization_ES}44 />45 );46};4748//App.tsx or similar49import { createTheme, ThemeProvider, useTheme } from '@mui/material';50import { esES } from '@mui/material/locale';5152const ExampleWithThemeProvider: FC = () => {53 const theme = useTheme(); //replace with your theme/createTheme54 return (55 //Setting Material UI locale as best practice to result in better accessibility56 <ThemeProvider theme={createTheme(theme, esES)}>57 <Example />58 </ThemeProvider>59 );60};6162export default ExampleWithThemeProvider;63
Custom Non-Built-In Translations
If you want to use a language that is not included in the library, you can still easily add your own custom translations to the localization
prop.
<MaterialReactTablecolumns={columns}data={data}localization={{actions: 'Ações',and: 'e',cancel: 'Cancelar',changeFilterMode: 'Alterar o modo de filtro',changeSearchMode: 'Alterar o modo de pesquisa',clearFilter: 'Limpar filtros',clearSearch: 'Limpar pesquisa',clearSort: 'Limpar classificações',clickToCopy: 'Clique para copiar',// ... and many more - see link below for full list of translation keys}}/>
For a full list of all available translation keys, see here
If you end up fully translating MRT into another language that is not yet supported, please consider making a PR to add it to the library so that everyone can use it!