2017-04-09 19 views
13

Tôi đang sử dụng create-react-app để bắt đầu dự án React. Tại mới nhất React 15.5.3 gói, nó xuất hiện cảnh báo sau đây:Cách khắc phục React 15.5.3 PropTypes cảnh báo không dùng nữa khi sử dụng create-react-app

Cảnh báo: Truy cập PropTypes qua chính Phản ứng gói bị phản đối. Sử dụng gói prop-type từ npm thay thế.

tôi có đã làm theo các blog:

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

nhưng nó không hoạt động. tôi không sử dụng bất kỳ PropTypes hoặc props trong mã:

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

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

    ...... 
} 

Làm thế nào để khắc phục điều đó?

Cảm ơn.

Trả lời

33

Được kéo từ Blog phản ứng - npm cài đặt kiểu prop-type, sau đó sử dụng mã mới. Ngoài ra nó cho biết bạn có thể nhận được thông báo lỗi này nếu một thành phần lồng nhau không sử dụng loại prop nhưng cha mẹ là - vì vậy bạn cần phải kiểm tra các thành phần khác.

// 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

Cảm ơn bạn. Nhưng tôi đã theo dõi blog này và tôi không sử dụng bất kỳ đạo cụ nào trong mã, không may mắn. – Contra

+2

Bạn có thể đặt mã lên trên github không? Ngoài ra, bạn có thể không sử dụng đạo cụ, nhưng các thư viện khác vẫn làm, ví dụ như Redux. –

+2

Ồ đúng như bạn đã nói, tôi sử dụng phản ứng khung hình, sử dụng đạo cụ. Tôi đã sửa nó. Cảm ơn! – Contra

Các vấn đề liên quan