title: Warning: Failed prop type: Invalid prop `children` of type `object` supplied to `Provider`, expected a single ReactElement
body: <p>I have a problem: </p>
  
  <p><code>Warning: Failed prop type: Invalid prop <code>children</code> of type <code>object</code> supplied to <code>Provider</code>, expected a single ReactElement.</code></p>
  
  <p>I have searched for an answer for sometime now but can't resolve this. My version of react is 15.3.0.</p>
  
  <p>thanks~</p>
  
  <pre><code>    import React from 'react';
      import ReactDom from 'react-dom';
      import { createStore, applyMiddleware, combineReducers } from 'redux';
      import { Provider } from 'react-redux';
      import { Router, Route, IndexRoute, hashHistory } from 'react-router';
      import { syncHistoryWithStore, routerReducer } from 'react-router-redux';
      import thunkMiddleware from 'redux-thunk';
  
      import reducers from './redux/reducers';
      import Entrance from './components/Entrance.jsx';
      import EntranceNone from './components/EntranceNone.jsx';
      import CreditPoints from './components/CreditPoints.jsx';
      import CreditPrivilege from './components/CreditPrivilege.jsx';
      import CreditPromote from './components/CreditPromote.jsx';
  
      let reduxDevTool = null;
      let combReducer = { app: reducers, routing: routerReducer };
      let store = createStore(combineReducers(combReducer), applyMiddleware(thunkMiddleware));
  
      const history = syncHistoryWithStore(hashHistory, store);
  
      ReactDom.render(
          &lt;Provider store={store}&gt;
              &lt;div&gt;
                  &lt;Router history={history}&gt;
                      &lt;Route path="/" component={ Entrance }&gt;&lt;/Route&gt;
                      &lt;Route path="/EntranceNone" component={ EntranceNone }&gt;&lt;/Route&gt;
                      &lt;Route path="/creditPoints" component={ CreditPoints }&gt;&lt;/Route&gt;
                      &lt;Route path="/privilege" component={ CreditPrivilege }&gt;&lt;/Route&gt;
                      &lt;Route path="/promote" component={ CreditPromote }&gt;&lt;/Route&gt;
                  &lt;/Router&gt;
              &lt;/div&gt;
          &lt;/Provider&gt;,
          document.getElementById('app')
      );
  
  
  require('../less/entrance.css');
  import { initRootFontSize,originDomin } from '../utils';
  import React,{Component} from 'react';
  import classNames from 'classnames';
  import 'babel-polyfill';
  import cookie from 'react-cookie';
  import { bindActionCreators } from 'redux';
  import { connect } from 'react-redux';
  import * as Actions from '../redux/action';
  import { hashHistory ,Link } from 'react-router';
  
  class Entrance extends Component { 
      constructor (props) {
          super(props);
          initRootFontSize();
          this.state = {
              agree:true,
              submitFlag:false
          };
      }
  
      handleAgreeMent(){
          this.setState({agree:!this.state.agree});
      }
  
      componentDidMount(){
          if(creditData.isOpenCreditService === "0"){
              this.context.router.push('/');
          }else{
              this.context.router.push('/creditPoints');
          }
      }
  
      componentDidUpdate(prevProps,prevState){
          if(this.props.resCode &amp;&amp; this.state.submitFlag){
              if(this.props.resCode == "000"){
                  this.context.router.push('/creditPoints');
              }else{
                  alert(this.props.resMsg);
              }
          }
      }
  
      handleClick(){
          if(this.state.agree){ 
              this.props.actions.fetchIsOpen();
              this.setState({submitFlag:true}); 
          }
      }
  
      render () {   
          return(
              &lt;div className="wrap"&gt;
                  &lt;div className="credit-img"&gt;&lt;/div&gt;
                  &lt;div className="credit-cont"&gt;
                      &lt;p className="credit-cont-up"&gt;xxx&lt;/p&gt;
                      &lt;p className="credit-cont-down"&gt;xxx&lt;/p&gt;
                  &lt;/div&gt;
                  &lt;div className="credit-agree"&gt;&lt;span className={classNames({icon: true, iconSelected: this.state.agree})} onClick={this.handleAgreeMent.bind(this)}&gt;&lt;/span&gt;&lt;span className="credit-agree-cont"&gt;xx&lt;a href={originDomin()+'static.pay.xiaomi.com/mi-credit-points/src/html/agreeMent.html'} className="credit-agree-detail"&gt;xxx&lt;/a&gt;&lt;/span&gt;&lt;/div&gt;
                  &lt;div className={classNames({button: true,bottonFalse:this.state.agree,submitFlag:this.state.submitFlag})}  onClick={this.handleClick.bind(this)}&gt;{this.state.submitFlag?'x':'xx'}&lt;/div&gt;
              &lt;/div&gt;
          );
      }
  
  }
  
  function mapStateToProps(state) {
      return {
          resCode: state.app.resCode,
          resMsg: state.app.resMsg,
          dataList: state.app.dataList
      };
  }
  
  function mapDispatchToProps(dispatch) {
      return {
          actions: bindActionCreators(Actions, dispatch),
      };
  }
  
  Entrance.contextTypes = {
      router: React.PropTypes.object
  };
  
  export default connect(mapStateToProps, mapDispatchToProps)(Entrance);
  </code></pre>