Themen
Themen
Verwenden und Anpassen der Themen
Du kannst die RainbowKit-Benutzeroberfläche anpassen, um sie an dein Branding anzupassen. Du kannst aus einigen vordefinierten Akzentfarben und Konfigurationen des Randradius wählen.
Es gibt 3 eingebaute Themenfunktionen:
lightTheme
(Standard)
darkTheme
midnightTheme
Eine Themenfunktion gibt ein Themenobjekt zurück. Sie können das Objekt der theme
-Eigenschaft von RainbowKitProvider
übergeben.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { darkTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
Wenn Sie möchten, können Sie accentColor
, accentColorForeground
, borderRadius
, fontStack
und overlayBlur
übergeben, um sie anzupassen.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor : '#7b3fe4' ,
accentColorForeground : 'white' ,
borderRadius : 'small' ,
fontStack : 'system' ,
overlayBlur : 'small' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
Die eingebauten Themenfunktionen akzeptieren auch ein Optionsobjekt, das Ihnen ermöglicht, aus mehreren verschiedenen visuellen Stilen auszuwählen.
Prop Type Default accentColor
Information string
"#0E76FD"
accentColorForeground
Information string
"white"
borderRadius
Information enum
Information large
fontStack
Information enum
Information rounded
overlayBlur
Information enum
Information none
overlayBlur
Information enum
Information none
Zum Beispiel, um das dunkle Thema mit einer lila Akzentfarbe und einer medium
Rahmenradius-Skala anzupassen:
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
borderRadius: 'medium' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Jedes Thema bietet auch mehrere Akzentfarben-Voreinstellungen (blau
, grün
, orange
, rosa
, lila
, rot
), die in das Optionsobjekt übernommen werden können. Zum Beispiel, um die Akzentfarben-Voreinstellung rosa
zu verwenden:
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
... darkTheme. accentColors . pink ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Hier sind einige verschiedene Möglichkeiten, wie Sie die theme
-Eigenschaft verwenden können.
Verwenden Sie das darkTheme
-Thema.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { darkTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
Verwenden Sie das midnightTheme
-Thema.
import {
RainbowKitProvider ,
midnightTheme,
} from '@rainbow-me/rainbowkit' ;
export const App = ( ) => (
< RainbowKitProvider theme = { midnightTheme ( ) } { ... etc} >
{ }
</ RainbowKitProvider >
) ;
Hier sind einige verschiedene Möglichkeiten, wie Sie die accentColor
-Konfiguration verwenden können.
Setzen Sie die Akzentfarbe auf einen benutzerdefinierten lila Wert.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Setzen Sie die Akzentfarbe auf das eingebaute green
-Preset.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
... darkTheme. accentColors . green ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Hier sind einige verschiedene Möglichkeiten, wie Sie die borderRadius
-Konfiguration verwenden können.
Setzen Sie den Rahmenradius auf medium
.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
borderRadius: 'medium' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Setzen Sie den Rahmenradius auf none
.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
borderRadius: 'none' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Erinnerung: Die verfügbaren Rahmenradius-Werte sind: large
(Standard), medium
, small
und none
.
Standardmäßig ist der fontStack
auf rounded
gesetzt. Aber so können Sie die fontStack
-Konfiguration verwenden.
Setzen Sie den Schriftstapel auf system
.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Standardmäßig ist overlayBlur
auf none
gesetzt. Aber so können Sie die overlayBlur
-Konfiguration verwenden.
Setzen Sie die Overlay-Unschärfe auf small
.
import { RainbowKitProvider , darkTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { darkTheme ( {
overlayBlur: 'small' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Hier sind einige verschiedene Möglichkeiten, wie Sie verschiedene Themen mit den Eigenschaften accentColor
, borderRadius
und fontStack
zusammen verwenden können.
Verwenden Sie das lightTheme
-Thema
Setzen Sie die Akzentfarbe auf einen benutzerdefinierten lila Wert
Setzen Sie den Rahmenradius auf medium
Setzen Sie den Schriftstapel auf system
import { RainbowKitProvider , lightTheme } from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { lightTheme ( {
accentColor: '#7b3fe4' ,
accentColorForeground: 'white' ,
borderRadius: 'medium' ,
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Verwenden Sie das midnightTheme
-Thema
Setzen Sie die Akzentfarbe auf das eingebaute pink
-Preset.
Setzen Sie den Rahmenradius auf small
Setzen Sie den Schriftstapel auf system
import {
RainbowKitProvider ,
midnightTheme,
} from '@rainbow-me/rainbowkit' ;
const App = ( ) => {
return (
< RainbowKitProvider
theme = { midnightTheme ( {
... midnightTheme. accentColors . pink ,
borderRadius: 'small' ,
fontStack: 'system' ,
} ) }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;
} ;
Wenn Ihre App die standardmäßige prefers-color-scheme: dark
-Medienabfrage verwendet, um zwischen hellen und dunklen Modi zu wechseln, können Sie optional ein dynamisches Themenobjekt bereitstellen, das Werte für lightMode
und darkMode
enthält.
import {
RainbowKitProvider ,
lightTheme,
darkTheme,
} from '@rainbow-me/rainbowkit' ;
const App = ( ) => (
< RainbowKitProvider
theme = { {
lightMode: lightTheme ( ) ,
darkMode: darkTheme ( ) ,
} }
{ ... etc}
>
{ }
</ RainbowKitProvider >
) ;