如何使用create-react-app修复React 15.5.3 PropTypes弃用警告

时间:2017-04-09 04:12:41

标签: reactjs create-react-app

我正在使用create-react-app启动React项目。 在最新的React 15.5.3包中,它会出现以下警告:

  

警告:不建议通过主React包访​​问PropTypes。   请改用npm中的prop-types包。

我已经关注blog

npm install prop-typesimport PropTypes from 'prop-types';

但它不起作用。 我在代码中不使用任何PropTypesprops

import React, { Component } from 'react';
import PropTypes from 'prop-types';

class App extends Component {
    constructor() {
        super();
        this.state = {
            videoVisible: true,
        };
    }

    ......
}

如何解决这个问题?

感谢。

2 个答案:

答案 0 :(得分:43)

从Reacts博客中获取 - npm install prop-types,然后使用新代码。另外它说如果嵌套组件没有使用prop-types但父级是 - 那么你可以得到这个错误信息,所以你需要检查其他组件。

// Before (15.4 and below)
import React from 'react';

class Component extends React.Component {
  render() {
    return <div>{this.props.text}</div>;
  }
}

Component.propTypes = {
  text: React.PropTypes.string.isRequired,
}

// After (15.5)
import React from 'react';
import PropTypes from 'prop-types';

class Component extends React.Component {
  render() {
    return <div>{this.props.text}</div>;
  }
}

Component.propTypes = {
  text: PropTypes.string.isRequired,
};

答案 1 :(得分:1)

React v15.5.x添加了新的警告check here

将React v15.5.3降级为15.4.x对我有用

npm install --save react@15.4.0 react-dom@15.4.0