我的组件中有一个属性,它应该获取有效CSS属性的数组:
interface MyComponentProps {
cssProperties: (keyof CSSStyleDeclaration)[];
}
const MyComponent = ({ cssProperties }: MyComponentProps) => {
//
}
问题是CSSStyleDeclaration
将样式存储为一个对象,属性名为驼峰大小写。我需要真实的的CSS属性值,带连字符。所以background-color
代替backgroundColor
。我知道也有React.CSSProperties
类型,但它也使用驼峰大小写的属性,同时允许无单位的数值。
是否有TypeScript类型可以使用原始的、带连字符的CSS属性名?
2条答案
按热度按时间7eumitmz1#
有一个库csstype,它被MUI、情感和其他一些流行的组件库所使用。
它允许您使用连字符属性
bgtovc5b2#
使用
Kebab
类型可用here。* Camelcased * CSS属性将转换为 * kebabcase *。打字机Playground