如果属性值为false,则保留扩展样式组件的默认值

时间:2018-07-03 14:57:04

标签: javascript typescript ternary-operator styled-components

我的应用程序使用Typescript和样式组件,并具有以下(简化的)样式组件声明:

const StyledComponent = styled(AnotherStyledComponent)`
    background-color: ${(p: any) => isTrue ? '#ede4dc' : null};
`

之所以将null用作第二个表达式,是因为我想使StyledComponent的background-color等于AnotherStyledComponent的background-color的值。

但是,如果我保持这种方式,则会收到错误消息:

  

[ts]   类型'(p:any)=>“#ede4dc”的参数| “ null”不可分配给“ Interpolation”类型的参数。     键入'(p:any)=>“#ede4dc” |不能将null分配给类型“ ReadonlyArray | InterpolationFunction ...'。       类型((p:any)=>“#ede4dc” |中缺少属性'flatMap'|空”。

我做错什么了吗,或者这是样式组件库方面的缺陷?

0 个答案:

没有答案