2015-11-03 7 views
7

Reduxがどのように動作するかを学ぶことで、私は非常に迷っています。 - 誰もが、私はこのエラーを取得していますなぜ発見することができますReact-Reduxエラー `Provider`に与えられた` object`型の `prop``子が無効です

Warning: Failed propType: Invalid prop `children` of type `object` supplied to `Provider`, expected `function` 
Uncaught TypeError: children is not a function 

私のコードは以下の通りです:私は現在、次のエラーを取得していますか?

import React, { Component } from 'react'; 
import ReactDOM from 'react-dom'; 
import { createStore, combineReducers } from 'redux'; 
import { Provider, connect } from 'react-redux'; 
import * as reducers from '../reducers/index'; 
import SassMeter from '../components/SassMeter'; 
import * as SassActions from '../actions/SassActions'; 
import _ from 'lodash' 

const reducer = combineReducers(reducers); 
const store = createStore(reducer); 

ReactDOM.render(
    <Provider store={store}> 
    <SassMeter /> 
    </Provider>, 
    document.getElementById('root') 
) 

私が理解から、私がプロバイダに無効な小道具を渡していることを訴えていますが、私が見てきたすべての例は、私がそこに従ってきたパターンに従ってください - そして、createStore()を使用してストアを作成それをルート要素をラップするプロバイダに渡します。私はconnectと何かが行方不明になっているように感じるかもしれませんが、何がわかりません。

すべてのご協力ありがとうございます。

答えて

2

react-reduxおよび/またはreactのバージョンをアップグレードすることをお勧めします。

< 0.14および反応性還元< 1.0.0では、プロバイダーコンポーネントはchildrenプロップとしての機能しか受け入れませんでした。これは、所有者ベースのコンテキスト伝播の回避策でした。これは、React 0.14の親ベースのコンテキスト伝播に代わって廃止されました。 react-redux 1.0.0 READMEのthe corresponding docを参照してください。

関連する問題