样式化的组件道具的流式键入不起作用

时间:2019-04-15 12:51:10

标签: reactjs types flowtype styled-components

我有这个样式的组件:

type Props = {
  iconAlign: string,
};

const IconWrapper: ComponentType<Props> = styled.View`
  margin: 10px 10px 0px 10px;
  position: absolute;
  ${({ iconAlign }: Props) =>
    iconAlign === 'left' ? 'left: -35px;' : 'right: -35px;'}
`;

并这样称呼:

<IconWrapper iconAlign="left">

但是Flow给我以下错误:

Cannot call styled.View because property iconAlign is missing in object type [1] in the first argument of array element.

"flow-bin": "0.96.0",
"styled-components": "^4.2.0",
libdef: styled-components_v4.x.x (satisfies styled-components@4.2.0)

1 个答案:

答案 0 :(得分:0)

由于某些原因,目前不支持内置组件上的自定义属性,但是Flow仍在开发对标记模板文字的支持。 https://github.com/flow-typed/flow-typed/pull/2933上的讨论对于理解为什么您的示例当前不起作用以及为使之成为可能而采取的步骤非常有用。