【发布时间】:2021-07-20 14:53:23
【问题描述】:
我有一个枚举文件Themes.ts
export enum Themes {
DEFAULT = 'default',
DARK = 'dark'
}
我想将该枚举用作<Test/> 组件中的默认道具,看起来像
export type TestProps = {
children: ReactChild,
theme?: Themes,
}
export const Test = ({ children, theme = Themes.DEFAULT }: TestProps) => {
console.log(theme)
return (
<div className={`${theme}`}>
<div>
{ children }
</div>
</div>
)
}
我看到的问题是console.log(theme) 正在打印Themes.DEFAULT 而不是default,因此默认值设置不正确。无论如何使用枚举来设置这个默认主题值,以便它能够正确评估?
编辑: 最终的工作是将 const 设置为枚举值,然后将其传递给道具
const enumValue = Themes.DEFAULT
export const Test = ({ children, theme = enumValue }: TestProps) => {
【问题讨论】:
标签: reactjs typescript enums