2016-09-28 39 views

回答

2

如果我正確理解你,你想從componentDidMount中調用dispatch作爲this.props中的一個函數(我不建議,請檢查REDX是如何工作的並創建你需要的動作創建者)。即便如此,以達到你能做到這一點:

function mapDispatchToProps(dispatch) { 
    return { dispatch }; 
} 

,創建一個調度屬性,它是調度功能本身。 不過,不要在真正的用例上這樣做,並不斷閱讀有關redux action.creators。

1

繼給定的例子中,傳遞到mapDispatchToPropsconnect這樣

function mapDispatchToProps(dispatch) { 
    return { 
    onClick: nextReddit => { 
     dispatch(selectReddit(nextReddit)); 
    } 
    }; 
} 

export default connect(mapStateToProps, mapDispatchToProps)(App) 

元器件App然後將與被作爲下面使用的道具onClick授權。

handleChange = nextReddit => { 
    this.props.onClick(nextReddit) 
} 

render() { 
    ... 
    return (
    ... 
    <Picker value={selectedReddit} 
      onChange={this.handleChange} 
      options={[ 'reactjs', 'frontend' ]} /> 
    ... 
); 
} 
相關問題