【发布时间】:2018-02-09 00:02:52
【问题描述】:
我正在尝试在我的 React 应用中实现深色和浅色主题。我知道主题是如何工作的,所以我正在配置我的按钮,例如:
const Button = styled.button`
/* some styles */
color: ${props => props.theme.main}
`;
然后我将主题定义为 consts:
const dark = {
main: 'black',
text: 'switch to light mode'
};
const light = {
main: 'white',
text: 'switch to dark mode'
};
当我想在某处使用主题时,我会这样做:
<ThemeProvider theme={dark}>
<Button>{dark.text}</Button>
</ThemeProvider>
但我想要实现的是动态更改主题(可能在按钮上的单击功能上)。我是 React 的新手,所以请不要对我刻薄。
【问题讨论】:
标签: javascript reactjs themes state styled-components