反应自定义类型定义

时间:2019-04-08 09:13:51

标签: javascript reactjs

我是React的新手,我在React应用程序中遇到了自定义类型定义的问题。我从Stoyan Stefanov的书中学到了知识,并且有一个自定义类型定义的示例,但是当我尝试构建应用程序时,出现了一个错误:

  

SyntaxError:   js / source / components / Button.js:意外的令牌,预期为“;” (9:5)

我的代码(从9行开始):

type Props = {
    href: ?string,
    className: ?string,
}

const Button = (props: Props) =>
    props.href
        ? <a {...props} className={classNames('Button', props.className)}/>
        : <button {...props} className={classNames('Button', props.className)}/>

是否可以创建我自己的类型,或者它是某些旧标准? 感谢您的任何评论!

1 个答案:

答案 0 :(得分:0)

您在书中看到的示例代码正在使用Facebook的flowtype。它是标准js之上的一种增强语法,需要通过babel转换回普通js代码才能真正运行它。

我相信Stefanov在他的书中包含设置说明。检查您跳过的部分,或访问flowtype的网站以获取说明。

到目前为止,我想说Microsoft的typescript正在引起更多关注。这两个是竞争对手,正在解决相同的问题。我个人认为打字稿做得更好。