建议直接在父组件/布局组件中直接搞定,就不需要在每一个子组件里面重复啦 ~
首先从antd中引入对应的语言包、组件及需要的方法
import { getLocale } from 'umi';
import zhCN from 'antd/es/locale/zh_CN';
import enCN from 'antd/es/locale/en_US';
import { ConfigProvider } from 'antd';
import { isEqual } from "lodash"
引入枚举 我这里做了一个简单的枚举
import { LOCALE_ENUM } from "@/constants/user"
export enum LOCALE_ENUM{
EN_US='en-US',
ZH_CN='zh-CN',
}
根据国际化判断当前语言
const locale = isEqual(getLocale(),LOCALE_ENUM.ZH_CN) ? zhCN : enCN
包裹组件
<ConfigProvider locale={locale}>
<div>{routerChildren}</div >
</ConfigProvider>
更多配置移步Antd官网查看,如果觉得有用的话可以给作者点个赞喔~