我有一个基于
Rails 5
的应用程序,安装了 browserify
和 react-rails
。我可以使用 npm
来加载组件和安装包。但是当我加载一些外部包,比如 react-bootstrap
组件时,浏览器控制台会出现'Warning: You are manually calling a React.PropTypes validation function for the....'这样的警告信息,每个组件上的每个属性都会有。
我已经到处查找,但是不知道该如何解决这些警告。类似的问题也被问到过这里,但是没有适用于我的问题的答案。
以下是我的文件:
package.json
{
"name": "myapp",
"version": "1.0.0",
"dependencies": {
"bootstrap": "^3.3.7",
"browserify": "^13.1.0",
"browserify-incremental": "^3.0.1",
"fetch": "^1.1.0",
"jquery": "^3.1.1",
"jquery-ui": "^1.12.1",
"jquery-ujs": "^1.2.2",
"react": "^15.3.2",
"react-bootstrap": "^0.30.4",
"react-dom": "^15.3.2",
"reactify": "^1.1.1",
"sweetalert-react": "^0.4.4"
}
}
application.js
//= require_self
//= require react-server
//= require react_ujs
window.$ = window.jQuery = global.$ = require('jquery');
var React = window.React = global.React = require('react');
var ReactDOM= window.ReactDOM = global.ReactDOM = require('react-dom');
require( 'jquery-ujs' );
require( 'jquery-ui' );
require( 'bootstrap' );
require( 'react-bootstrap' );
require( 'fetch' );
require( './components' );
components.js
var app = window.app = global.app = {};
// Component::Manifest
var AdminDashboard = require( 'components/dashboards/admin' );
app.AdminDashboard = AdminDashboard
admin.js.jsx
var ButtonToolbar = require('react-bootstrap').ButtonToolbar;
var Button = require('react-bootstrap').Button;
var Admin = React.createClass({
handleClick(){
alert('This was clicked');
},
render: function() {
return (
<ButtonToolbar bsClass="btn-group">
<Button active={true} bsStyle="primary" onClick={this.handleClick}>Primary</Button>
</ButtonToolbar>
);
}
});
module.exports = Admin;
如果这个警告与外部包及其组件有关,我该如何摆脱它?