2016-08-01 19 views
24

Tôi đã nâng cấp lên phiên bản React/RN mới nhất: "phản hồi": "^ 15.2.1", "phản ứng gốc": "^0.30.0 ",Cách thủ công xác nhận React.PropTypes Phản ứng gốc "^ 0.30.0"

Và tôi bắt đầu nhận được rất nhiều cảnh báo về bảng định kiểu. Tôi thực sự không sử dụng xác nhận React.PropTypes cho các trang mẫu, vậy tại sao lại ném các cảnh báo này?

const styles = StyleSheet.create({ 
    welcome: { 
     fontSize: 20, 
     textAlign: "center", 
     margin: 10, 
    }, 

ExceptionsManager.js: 76 Cảnh báo: Bạn đang tự gọi một chức năng xác nhận React.PropTypes cho fontSize prop trên StyleSheet welcome. Điều này không còn được dùng nữa và sẽ không hoạt động trong phiên bản chính tiếp theo. Bạn có thể thấy cảnh báo này do thư viện của bên thứ ba PropTypes. Xem https://facebook.github.io/react/warnings/dont-call-proptypes.html cho details.reactConsoleError @

ExceptionsManager.js: 76 Cảnh báo: Bạn đang tự gọi một chức năng xác nhận React.PropTypes cho textAlign prop trên StyleSheet welcome. Điều này không còn được dùng nữa và sẽ không hoạt động trong phiên bản chính tiếp theo. Bạn có thể thấy cảnh báo này do thư viện của bên thứ ba PropTypes. Xem https://facebook.github.io/react/warnings/dont-call-proptypes.html

ExceptionsManager.js: 76 Cảnh báo: Bạn đang tự gọi một chức năng xác nhận React.PropTypes cho margin prop trên StyleSheet welcome. Điều này không còn được dùng nữa và sẽ không hoạt động trong phiên bản chính tiếp theo. Bạn có thể thấy cảnh báo này do thư viện của bên thứ ba PropTypes. Xem https://facebook.github.io/react/warnings/dont-call-proptypes.html để biết chi tiết.

Trả lời

23

Phản ứng gốc 0,30 phụ thuộc vào phản ứng 15.2.0 không 15.2.1. Vì vậy, bạn nên làm rm -rf node_modules/react, xóa phiên bản phản ứng khỏi package.json, sau đó npm install --save [email protected]. Cái này cần phải dùng mẹo.

+0

Tuyệt vời. Mặc dù tôi không sử dụng React native 0.30, nhưng nó đã giải quyết được vấn đề. –

+0

[email protected] là OK cho phản ứ[email protected] – Mark

+0

Phản ứng 15.3.0 đã đưa ra một cảnh báo mới nhưng React Native chưa được cập nhật để khắc phục việc sử dụng React. Vì vậy, bạn có thể gắn bó với 15.2.1 cho đến khi điều này được sửa trong React Native. –

1

Vâng đây chỉ là lỗi với phiên bản phản ứng. Nếu bạn cập nhật lên phiên bản 15.3.0, tất cả các cảnh báo sẽ biến mất. Tham chiếu: https://github.com/callemall/material-ui/issues/4854

+0

Liên kết tham chiếu bạn cung cấp không hỗ trợ câu trả lời của bạn. Liên kết nói: Phản ứng 15.3.0 các nhà bảo trì dường như đã không sử dụng các chức năng xác thực của PropTypes. Câu hỏi của tôi là nói rằng tôi thực sự không sử dụng xác nhận React.PropTypes cho các trang mẫu, vậy tại sao lại ném cảnh báo? –

+0

Tôi cũng đã cố gắng nâng cấp lên 15.3.0 –

+0

cập nhật lên phiên bản 15.2.0 sẽ không xóa cảnh báo của bạn nhưng việc cập nhật lên 15.3.0 sẽ xóa cảnh báo bạn đang đề cập đến trong câu hỏi của mình. – TomTom

7

Tôi đã giải quyết vấn đề bằng cách thay đổi các phiên bản (xóa khỏi node_modules và cài đặt gói).

npm --save remove react react-native 
npm --save install [email protected] [email protected] 

Tôi không tái triển khai mã gốc. Tôi đã nhìn thấy các vấn đề trước đây khi sử dụng:

"react": "^15.3.0", 
"react-native": "^0.31.0" 
Các vấn đề liên quan