Rainbow logo
RainbowKit
2.2.0

本地化

本地化

通过内置翻译自定义您的 dApp 语言

默认情况下,RainbowKit 支持en-US地区的英语用户。

如有可用,RainbowKit 将检测用户的首选语言并选择合适的翻译。 开发者可以随时覆盖默认语言。

要为您的用户指定一种语言,只需在您的 RainbowKitProvider中添加 locale="zh-CN" 作为一个 prop

import { RainbowKitProvider } from '@rainbow-me/rainbowkit';
export const App = () => (
<RainbowKitProvider locale="zh-CN" {...etc}>
{/* Your App */}
</RainbowKitProvider>
);

RainbowKit 的本地化支持与 Sub-path Routing一起使用效果更佳。

像下面的示例那样配置您的Next.js项目,以在您的路由中添加可选的/locale/子路径,这将帮助搜索引擎和用户更好地发现您的多语言支持。

// next.config.js
{
i18n: {
locales: ['default', 'en', 'zh-CN'],
defaultLocale: 'default',
},
}

然后将页面路由器提供的locale传递到RainbowKitProvider

import { RainbowKitProvider, Locale } from '@rainbow-me/rainbowkit';
export const App = () => {
const { locale } = useRouter() as { locale: Locale };
return (
<RainbowKitProvider locale={locale} {...etc}>
{/* Your App */}
</RainbowKitProvider>
)
};

您可以在这里参考页面路由器的示例。

应用路由器尚未支持i18n。 在这里参考我们以next-intl为中间件的最佳实践。

建议使用相同的技术翻译您的dApp的内容,以便全面支持本地化。 像i18n-jsnext-intl这样的本地化库以及像 Crowdin 这样的管理工具将简化此过程。

我们为以下的 locale 地区提供全面支持:

语言地区语言环境简写形式

English

United States 🇺🇸

en-USen

中文

Mainland China 🇨🇳

zh-CNzh-Hans

zh

繁體中文

Hong Kong 🇭🇰

zh-HK

繁體中文

Taiwan 🇹🇼

zh-TWzh-Hant

हिंदी

India 🇮🇳

hi-INhi

Español

Latin America 🌎

es-419es

Français

France 🇫🇷

fr-FRfr

العربية

Middle East 🌍

ar-ARar

Português

Brazil 🇧🇷

pt-BRpt

Русский

Russia 🇷🇺

ru-RUru

Bahasa Indonesia

Indonesia 🇮🇩

id-IDid

日本語

Japan 🇯🇵

ja-JPja

Türkçe

Turkey 🇹🇷

tr-TRtr

한국어

South Korea 🇰🇷

ko-KRko

ภาษาไทย

Thailand 🇹🇭

th-THth

українська

Ukraine 🇺🇦

uk-UAua

如果您希望看到对额外语言的支持,请打开一个 GitHub Discussion,我们将尽快进行支持。