2017-02-01 23 views
2

我在App.js中有以下內容。爲了調試的目的,我可以通過store.getState()來console.log當前狀態。react-redux:從任何容器getState()

const App =() => { 
    const store = createStore(reducers); 
    console.log(store.getState()); 
    return (
    <Provider store={store}> 
     <Router /> 
    </Provider> 
); 
}; 
export default App; 

現在我該如何從這個應用程序的容器中調用console.log store.getState()。

更新: 繼在評論「連接」的建議,這是代碼的在容器底部:

export default connect(mapStateToProps, { 
    Decrease, 
    Increase, 
    selectNumber 
})(TableGenerator); 

我會在哪裏添加的getState()?

謝謝

+0

從'react-redux'有'connect' helper,你試過了嗎? – webdeb

+1

只是一個一般的提示:鉻的redux開發工具真的很不錯。你可以看到一個很好的圖形表示狀態樹。然後,在你的代碼中的任何一個簡單的'調試器'都可以做到這一點。 – kinbiko

+0

我已更新該問題。 Redux開發工具是否可以使用react-native(在Chrome中遠程調試)?我安裝了Redux開發工具,但坦率地不知道如何使用它們與React本地 – Wasteland

回答

6

mapStateToProps第一個參數實際上是終極版的狀態。它實際上是一個抽象的getState()

const mapStateToProps = function(state, ownProps) { 
    // state is equivalent to store.getState() 
    // you then get the slice of data you need from the redux store 
    // and pass it as props to your component 

    return { 
    someData: state.someData 
    } 
}