Перейти к основному содержимому

Локализация React Spreadsheet

React Spreadsheet имеет два отдельных механизма локализации для различных аспектов интерфейса.

Два механизма локализации

МеханизмПропсЧто контролирует
Локализация интерфейсаspreadsheetLocaleМетки меню, подсказки панели инструментов, текст диалогов и локализованные имена формул
Форматирование чисел/датlocalizationРазделитель дробной части, символ валюты, формат отображения даты/времени

Эти пропсы независимы: можно использовать один или оба.

Локализация интерфейса (spreadsheetLocale)

Пропс spreadsheetLocale принимает объект SpreadsheetLocale с двумя свойствами:

  • locale - Record<string, string> с переопределениями строк интерфейса
  • formulas - Record<string, [string, string?][]> с локализованными именами формул, сгруппированными по категориям
const locale: SpreadsheetLocale = {
locale: {
"File": "Datei",
"Edit": "Bearbeiten",
"Insert": "Einfügen",
"Undo": "Rückgängig",
"Redo": "Wiederherstellen",
// ... другие строки интерфейса
},
formulas: {
"MATCH": [
["Suchwert", "Erforderlich. Der Wert, der im Sucharray abgeglichen werden soll."],
["Sucharray", "Erforderlich. Ein Zellbereich oder ein Array-Bezug."],
],
// ... другие категории формул
},
};

<ReactSpreadsheet sheets={sheets} spreadsheetLocale={locale} />
Предупреждение

spreadsheetLocale — это пропс только для инициализации. Изменение его после первоначального рендера приводит к уничтожению и пересозданию виджета. История отмены/повтора и состояние интерфейса (выделение, позиция прокрутки) сбрасываются.

Форматирование чисел/дат (localization)

Пропс localization управляет отображением чисел и дат: разделителями дробной части, символами валют и шаблонами дат. Использует тот же формат, что и свойство конфигурации localization DHTMLX Spreadsheet.

<ReactSpreadsheet
sheets={sheets}
localization={{
decimal: ",",
thousands: " ",
currency: "€",
}}
/>
Предупреждение

localization также является пропсом только для инициализации. Изменения запускают полный цикл уничтожения/пересоздания.