我遇到错误
属性'name'在类型'ThemedStyledProps
,“ slot”中不存在| “样式” | ... 253更多... | “ css”>&{...; },任何>“。
使用代码段时
// Styled Components
const IconContainer: any = styled.span.attrs(props => ({
className: `icon-${ props.name }`
}))\`
display: inline-block;
font-size: ${ props => props.size };
color: ${ props => props.color };
transform: ${ props => props.transform};
\`;
在使用props.name,props.size,props.transform的行上获取此错误
答案 0 :(得分:0)
所以TypeScript当前无法将通用类型传递给加标签的模板文字
有一些选择。首先是为您第一次使用道具提供类型,然后ts会假设其余的都使用该类型
背景:$ {(props:Props} => props.theme.brand}; 边框:$ {props => ...}
或将其与Props函数配合使用
https://github.com/styled-components/styled-components/issues/630#issuecomment-317277803