Reactjs 我可以为功能性UI组件声明道具类型吗?

Reactjs 我可以为功能性UI组件声明道具类型吗?,reactjs,Reactjs,换句话说,我可以用React+TypeScript或React+Flow这样做吗 function Foo(rect:Rect) { return <div><span>{rect.x}</span><span>{rect.y}</span></div>; } 函数Foo(rect:rect){ 返回{rect.x}{rect.y}; } 与此相反: function Foo({x,y}:{x:number,y:n

换句话说,我可以用React+TypeScript或React+Flow这样做吗

function Foo(rect:Rect) {
   return <div><span>{rect.x}</span><span>{rect.y}</span></div>;
}
函数Foo(rect:rect){ 返回{rect.x}{rect.y}; } 与此相反:

function Foo({x,y}:{x:number,y:number}) {
   return <div><span>{x}</span><span>{y}</span></div>;
}
函数Foo({x,y}:{x:number,y:number}){
返回{x}{y};
}

将它们创建为函数的属性。看


在Javascript中,函数只是对象。

以下是我一直在寻找的答案:

// TypeScript
class Foo extends React.Component<FooProps, FooState> {}

// Flow
class Foo extends React.Component {
  state: FooState;
  props: FooProps;
}
//类型脚本
类Foo扩展了React.Component{}
//流动
类Foo扩展了React.Component{
国家:国家;
道具:食物道具;
}

JavaScript不是静态类型语言,所以真的不明白你的意思吗?如果你想做类似的事情,可以使用flow或typescript。否则,react会以本机方式生成PropTypes
// TypeScript
class Foo extends React.Component<FooProps, FooState> {}

// Flow
class Foo extends React.Component {
  state: FooState;
  props: FooProps;
}