天天看點

mapStateToProps

mapStateToProps 是一個函數(函數名可以自定義),它的作用就像它的名字那樣,建立一個從(外部的)state對象到(UI元件的)props對象的映射關系。

作為函數,mapStateToProps執行後應該傳回一個對象,裡面的每個鍵值就是一個映射。

如下所示:

function mapStateToProps(state) {
    return {
        count: state.number,
        list: state.list
    }
}
           
export default connect(
    mapStateToProps,
)(Login)
           

在這裡不一定非要mapStateToProps這個函數,也可以直接在connect裡面寫。

export default connect(state=>{
	return {
		count: state.number,
        list: state.list
	}
})(Login)
           

提問:

state從何而來?

來此下面的store

class App extends Component {
  render() {
    return (
        <Provider store={store}>
            <Router>
                <div className='wrapper center'>
                    <Route path='/' component={Login}></Route>
                    <Route path='/main' component={Index}></Route>
                </div>
            </Router>
        </Provider>

    );
  }
}

export default App;