【发布时间】:2021-04-29 22:28:39
【问题描述】:
我有一个像这样的基于类的组件
class ArInput extends React.Component {
render() {
const { shadowless, success, error } = this.props;
const inputStyles = [
styles.input,
!shadowless && styles.shadow,
success && styles.success,
error && styles.error,
{...this.props.style}
];
return (
<Input
placeholder="write something here"
placeholderTextColor={argonTheme.COLORS.MUTED}
style={inputStyles}
color={argonTheme.COLORS.HEADER}
iconContent={
<Icon
size={14}
color={argonTheme.COLORS.ICON}
name="link"
family="AntDesign"
/>
}
{...this.props}
/>
);
}
}
我正在尝试使用反应挂钩将上述类转换为基于功能的组件。 这是我在打字稿中想到的最好的
const ArInput =({ shadowless, success, error, style }:any)=> {
const inputStyles = [
styles.input,
!shadowless && styles.shadow,
success && styles.success,
error && styles.error,
{...style}
];
return (
<Input
placeholder="write something here"
placeholderTextColor={argonTheme.COLORS.MUTED}
style={inputStyles}
color={argonTheme.COLORS.HEADER}
iconContent={
<Icon
size={14}
color={argonTheme.COLORS.ICON}
name="link"
family="AntDesign"
/>
}
{ ...shadowless, ...success, ...error, ...style }
/>
);
}
但我在这一行遇到错误{ ...shadowless, ...success, ...error, ...style }
错误是Expression expected.ts(1109)
在 javascript 代码中,这一行是 {...this.props}
如何将我的 javascript 类转换为 typescript?
我在 javascript 代码中转换这一行 {...this.props.style} 的方式是否正确?
【问题讨论】:
标签: javascript reactjs typescript react-native material-ui