我目前正在使用TailwindCss构建我的下一个项目的组件库,当我在Button组件上工作时遇到了一个小问题。
我传递了一个像'primary'
或'secondary'
这样的属性,该属性与我在tailwind.config.js
中指定的颜色匹配,然后我想使用模板文字(Template literals)
将其分配给按钮组件,如下所示:bg-${color}-500
<button
className={`
w-40 rounded-lg p-3 m-2 font-bold transition-all duration-100 border-2 active:scale-[0.98]
bg-${color}-500 `}
onClick={onClick}
type="button"
tabIndex={0}
>
{children}
</button>
类名在浏览器中显示得很好,DOM中显示为bg-primary-500
,但未在应用的样式选项卡中显示。
theme: {
extend: {
colors: {
primary: {
500: '#B76B3F',
},
secondary: {
500: '#344055',
},
},
},
},
但是它不应用任何样式。如果我手动添加bg-primary-500
,它就能正常工作。
我只是想知道这是否是因为JIT编译器无法捕捉到动态类名,还是我做错了什么(或者这不是使用tailWind的方法)。
欢迎提供任何帮助,先谢谢了!