メインコンテンツへスキップ

ConfigProvider グローバル設定

コンポーネントに統一されたグローバル設定(サイズ、言語、テーマ変数、背景紋様のホワイトリスト)を提供します。

基本的な使い方​

グローバルサイズとテーマ変数
import { LhConfigProvider, LhButton } from '@lh-ui/react'

export default function Demo() {
return (
<>
<LhConfigProvider size="large" themeVars={{ 'primary-color': '#722ed1' }}>
<LhButton type="primary">グローバル large + カスタムメインカラー</LhButton>
</LhConfigProvider>

<LhConfigProvider size="small">
<LhButton type="primary">グローバル small</LhButton>
</LhConfigProvider>
</>
)
}

Props​

プロパティ説明型デフォルト値
sizeグローバルサイズ'large' | 'middle' | 'small'—
localeグローバル言語LhComponentLanguage'zh-CN'
themeVarsグローバルテーマ変数(キーに --lh- 接頭辞をつけない)Record<string, string>—
patternComponents背景紋様を有効化するコンポーネントのホワイトリストLhThemeableComponent[]—
componentThemeコンポーネント名ごとに個別のテーマ変数を設定Partial<Record<LhThemeableComponent, Record<string, string>>>—

テーマ変数の優先順位​

コンポーネント自身の props > componentTheme[コンポーネント名] > グローバル themeVars

themeVars の使用可能なキー​

キー説明
primary-colorメインカラー
success-color / warning-color / danger-color / info-colorセマンティックカラー
gold-color / vermilion-color / jade-color中華風専用カラー
bg-color / text-color / border-colorニュートラルカラー
bg-pattern紋様背景の URL(例:var(--lh-pattern-willow))
bg-pattern-opacity / bg-pattern-color紋様の不透明度と色
decoration-color装飾色

テーマカスタマイズの全景はテーマカスタマイズを参照してください。

コンポーネント内で読み取る​

import { useLhConfigContext } from '@lh-ui/react'

function Probe() {
const { size, locale } = useLhConfigContext()
return <span>{size} / {locale}</span>
}
消費側のフォールバック

LhConfigProvider でラップしていない場合、useLhConfigContext() は全フィールドが undefined のフォールバックオブジェクトを返します(null ではありません)。コンポーネント内で null 判定は不要です。これは plus との意図的な差異です。

スタイル​

import '@lh-ui/react/style/config-provider'