SEMI DESIGN 源码学习(十)全局配置 & 多语言

ConfigProvider 为组件提供统一的全局化配置

ConfigProvider 组件为其他组件提供全局配置数据,源码位于 packages/semi-ui/configProvider/index.tsx

它返回一个 Context.Provider,通过传入的默认值,使得它的 children 能够获取全局状态

ConfigContext

ConfigContext 就是通过 React.createContext 创建的一个状态值,类型是 ContextValue

LocaleProvider 国际化组件,为组件提供多语言支持

源码位于 packages/semi-ui/locale/localeProvider.tsx,返回一个 LocaleContext.Provider

LocaleConsumer

获取 ConfigContextLocaleContext 语言状态,提供给子组件使用

LocaleContext

通过 React.createContext 创建的一个状态值,类型是 Locale

本文完,感谢阅读🌹

相关推荐
yqcoder2 分钟前
NPM 包管理问题汇总
前端·npm·node.js
程序菜鸟营9 分钟前
nvm安装详细教程(安装nvm、node、npm、cnpm、yarn及环境变量配置)
前端·npm·node.js
bsr198320 分钟前
前端路由的hash模式和history模式
前端·history·hash·路由模式
杨过姑父1 小时前
ES6 简单练习笔记--变量申明
前端·笔记·es6
Jacob程序员1 小时前
leaflet绘制室内平面图
android·开发语言·javascript
Sunny_lxm1 小时前
<keep-alive> <component ></component> </keep-alive>缓存的组件实现组件,实现组件切换时每次都执行指定方法
前端·缓存·component·active
eguid_11 小时前
JavaScript图像处理,常用图像边缘检测算法简单介绍说明
javascript·图像处理·算法·计算机视觉
sunly_2 小时前
Flutter:自定义Tab切换,订单列表页tab,tab吸顶
开发语言·javascript·flutter
咔咔库奇2 小时前
【TypeScript】命名空间、模块、声明文件
前端·javascript·typescript
NoneCoder2 小时前
JavaScript系列(42)--路由系统实现详解
开发语言·javascript·网络