Localization Example
This example demonstrates how to implement multi-language support in Easy Email Pro editor.
Overviewâ
The localization example shows how to:
- Switch between different languages
- Load translation files
- Update editor UI based on selected language
Code Exampleâ
import { useState, useMemo } from "react";
import { EmailEditorProvider, EmailTemplate } from "easy-email-pro-editor";
import { Retro } from "easy-email-pro-theme";
import { get } from "lodash";
import localsData from "easy-email-pro-localization/locales/locales.json";
import { Select } from "@arco-design/web-react";
export default function MyEditor() {
const [lang, setLang] = useState<string>("en");
const config = Retro.useCreateConfig({
localeData: get(localsData, lang),
// ... other config
});
return (
<EmailEditorProvider {...config}>
<Select
value={lang}
onChange={setLang}
options={[
{ label: "English", value: "en" },
{ label: "䏿įŽäŊ", value: "zh-Hans" },
]}
/>
<Retro.Layout key={lang} />
</EmailEditorProvider>
);
}
Key Pointsâ
- Use
localeDataprop to provide translations - Load translation files from
easy-email-pro-localization - Update editor when language changes
- Use
keyprop to force re-render on language change