【发布时间】:2019-09-16 22:45:35
【问题描述】:
自从一周以来,我们在我的团队项目中使用样式化组件宽度 React-Native 和 Typescript。
我正在努力理解如何正确使用 Typescript。
我的问题
我实际上很难理解我应该如何使用样式方法键入无状态功能组件。
实际代码
这是我关注doc的内容:
const SFCView: SFC<{}> = (props) => {
return <View style={props.style} />
}
const StyledSFCView = styled(SFCView)`
width: 100;
height: 100;
background-color: green
`;
我的错误
Typescript 告诉我,我的类型 SFC<{}> 中不存在道具样式。事实上,我没有在任何地方定义它。
我尝试了什么
我试图告诉 typescript 我的 SFC 有这些道具
const SFCView: SFC<{style: ViewStyle}> = (props) => {
return <View style={props.style} />
}
但是当我在代码中的其他地方使用SFCView 时,打字稿告诉我必须指定视图的所有道具。
有人知道如何正确输入吗?
【问题讨论】:
-
您希望 props.style 覆盖 StyledSFCView 的任何样式还是仅覆盖您当前拥有的样式,即宽度、高度和背景颜色?
-
@BenSmith 就是我的风格。
标签: typescript react-native styled-components