为什么在此打字稿反应组件的预期道具的对象结构中存在分号?

时间:2019-03-25 00:30:05

标签: reactjs typescript

检查一下我看到的示例代码:

import * as React from 'react';

const Count: React.FunctionComponent<{
  count: number; // this is the line that confuses me
}> = (props) => {
  return <h1>{props.count}</h1>;
};

export default Count;

该对象结构定义了预期的道具,但是既然什么时候在对象中的k-v对之后使用分号在语法上是正确的?这一定是我不熟悉的Typescript语法,但是我不确定它叫什么。

1 个答案:

答案 0 :(得分:3)

这等同于定义一个接口,只是没有名称,所以遵循语法shown here

interface CountInterface {
    count: number;
}

它实际上不是键-值对,而是键-类型对。由于打字稿需要使用的方式,这意味着它是一组语句(以分号结尾),尽管看起来像对象文字,但不是。

是的,这是一个“打字稿内容”,允许进行类型检查。