检入react组件是否存在styleName

时间:2019-03-14 15:00:58

标签: javascript css reactjs

我打算动态调用我在React组件上导入的css选择器。 但是,如果不存在样式,则会引发错误

Uncaught Error: Could not resolve the styleName 'dynamicvalue3'.

有可能做出这样的检查isClassExists('dynamicvalue3')吗?

示例: 这是我的css文件示例内容。文件名是mycustomcss.styles.css

.dynamicvalue1 {}
.dynamicvalue2 {background-color: #87c930;}

在我的react组件的render方法上是

import theme from './mycustomcss.styles.css';
.....
const badge = /* This will be fetch dynamically. And the values will vary from dynamicvalue1, dynamicvalue2 etc.. */;
.....
return (<div styleName={badge}>Text here</div>}/>);

问题: 由于dynamicvalue3不存在,它将引发错误。所以我在考虑这种方法是否确实可行。

谢谢

1 个答案:

答案 0 :(得分:1)

像这样theme.dynamicvalue3进行检查,如果存在,它将返回真实值

const badge = theme.dynamicvalue3 ? theme.dynamicvalue3 : theme.dynamicvalue2