国际化 IntlDropdown
IntlDropdown 组件用于实现语言切换功能。通过点击该组件,用户可以在支持的语言之间进行切换。该组件会根据当前语言显示对应的图标,并通过 Redux 管理语言状态。
📦 引入方式
import { IntlDropdown } from '@npmqg/react-ui-core';
🧩 使用示例
📚 简单用法
locales 为当前语言 zh_CN 、 en_US
<IntlDropdown locales={locales} />
此组件会根据当前的语言状态切换语言,点击组件时触发语言切换。
🧩 Props
IntlDropdown 组件没有需要传递的 props 参数。它通过内部逻辑和 Redux 状态来管理语言切换。
⚙️ 组件特性
- 语言切换:通过点击组件触发
toggleLanguage方法,切换当前语言。 - 图标显示:根据当前的
locales状态,动态切换显示的图标。locales是从 Redux 中获取的语言设置。 - 自动加载语言:在组件挂载时,如果没有获取到
locales,会自动触发语言切换操作。
🧠 组件逻辑
- 语言状态管理:通过
Redux的useSelector获取当前的locales状态。 - 语言切换:通过
useLanguagehook 获取toggleLanguage方法,在用户点击组件时触发切换操作。 - 图标显示:根据当前语言 (
locales),选择显示相应的图标,使用Svg组件来渲染图标。
📝 注意事项
- 该组件会自动根据当前语言 (
locales) 渲染相应的图标。如果locales为空,它会在组件挂载时触发语言切换。 - 确保
locales已经正确存储在Redux中,并且toggleLanguage方法能够正确切换语言。