【发布时间】:2018-07-09 17:41:18
【问题描述】:
因此,您可以将 React.FC<PropsType> 类型分配给变量,以便将其理解为 React 无状态功能组件,如下所示:
//Interface declaration
interface ButtonProps {
color: string,
text: string,
disabled?: boolean
}
// Function Component
let Button: React.FC<ButtonProps> = function(props){
return <div> ... </div> ;
}
但是,我无法理解如何将相同类型分配给作为函数声明构建的 FC:
//Props interface already declared
function Button(props){
render <div> ... </div>;
}
我可以将类型分配给props 参数,它会部分帮助,因为它会显示我期望从调用者那里得到什么(减去children 属性),但我认为这不会有帮助来自调用上下文的任何智能感知。我也不知道要设置什么作为第二个示例的返回类型。
谢谢!
【问题讨论】:
-
你试过
function Button(props: ButtonProps){return <div> ... </div>;}我在呼叫现场得到了完整的智能感知,不知道你还想要什么:) -
嗯,你知道。我一定不是很细心。不过,出于好奇或代码样式的目的,有没有办法将类型分配给函数声明?
-
你可以尝试写
const Button: ComponentType<ButtonProps> = (props) => <div>...</div>;
标签: javascript reactjs typescript