This article describes how to localize UI texts in DevExtreme React Components.
Plugins that render UI texts have the messages
property. It accepts an object that contains messages as key-value pairs in which keys are message IDs and values are messages. For a list of supported message IDs, see the Localization Messages section of the plugin's API Reference.
To translate a message, find the plugin that renders it and specify the plugin's messages
property with an object that contains your translations. Those message IDs that you omit from the object use default translations.
The following code translates a message from the Table
plugin:
const tableMessages = {
noData: 'Keine Daten verfügbar',
};
...
<Table messages={tableMessages}>
In some cases, components allow you to use custom message IDs. For example, in the React Grid component, custom filter operation names are used as message IDs to retrieve texts for filter selector items:
<DataTypeProvider
for={dateColumns}
availableFilterOperations={['month', ...]}
/>
<TableFilterRow
messages={ { month: 'Month equals' } }
/>
The complete code is available in the Custom Filter Operations article.
Messages can contain texts in curly braces. These are placeholders used to display dynamic values. For example, the PagingPanel
plugin's info
message contains three placeholders:
const pagingMessages = {
info: '${from}-${to} of ${count}',
};
They are replaced with actual data when the plugin is rendered.
See also:
Grid localization
Scheduler localization