Meteor中的React PropTypes对我不起作用

时间:2017-06-20 10:15:21

标签: javascript validation reactjs meteor

我尝试了不同的流星/反应教程,我总是遇到同样的问题。

如果出现问题,我不知道为什么PropTypes不会在控制台中显示警告。例如:

如果我删除标题<TitleBar title="Test title"/>即使需要,代码仍然可以正常运行而无需警告。

如果我更改了对象,bool或数组title: PropTypes.string.isRequired中的字符串,一切都仍然正常,没有警告。

import React from 'react';
import PropTypes from 'prop-types';

export default class TitleBar extends React.Component {
  render(){
    return (
      <div>
        <h1>{this.props.title}</h1>
      </div>
    );
  }
}

TitleBar.propTypes = {
  title: PropTypes.string.isRequired
};

我也尝试过官方的Meteor / React教程,我遇到了同样的问题。 https://www.meteor.com/tutorials/react/components

PropTypes仅用于测试目的吗?

1 个答案:

答案 0 :(得分:3)

从npm

安装新软件包
  npm install --save prop-types

并导入此内容 在你的代码中

  import React from 'react';
  import PropTypes from 'prop-types';
  export default class TitleBar extends React.Component {
  render() {
          return (
             <div>
             <h1>{this.props.title}</h1>

            </div>
                 );
      }
    }

    TitleBar.propTypes = {
        title: PropTypes.string.isRequired

      };