之前用React v15.4,使用props的类型检查写法如下:
import React, { Component, PropTypes } from 'react';
...
ComponentChild.propTypes = {
caption: PropTypes.string.isRequired
};
结果升级到16之后直接报错,看了文档发现在15.5版本这一AP就被独立成了一个新的包 prop-types,写法如下:
import React, { Component } from 'react';
import PropType from 'prop-types';
...
Counter.propTypes = {
caption: PropType.string.isRequired
};
之前的教程大部分基于15.4及之前的版本,在stackoverflow大部分也回答的含混不清,还是看了文档才知道怎么做,特别记录一下。