【发布时间】:2018-04-04 04:03:37
【问题描述】:
我第一次在应用程序中使用 Redux,并且无法理解如何将组件内部状态传递给全局状态对象。
`export default class ComponentOne extends Component {
constructor() {
this.state = {
number: 0
}
handleNumber = (e) => {
this.setState({
number: e.target.value
})
}
render() {
console.log(this.state.number)
return (
<div>
<input onChange={this.handleNumber} type="number">
</div>
)
}
}
}
function mapStateToProps(state) {
return {
number: state
}
}
export default connect(mapStateToProps, { HANDLE_NUMBER_CHANGE })(ComponentOne);`
我的动作和减速器:
`const HANDLE_NUMBER_CHANGE = state => {
return {
type: 'HANDLE_NUMBER_CHANGE'
}
}
export default (state = 0, action) {
switch(action.type) {
case 'HANDLE_NUMBER_CHANGE':
//Im lost here - trying to save internal state
default:
return state;
}
}`
我的商店设置正确,中间件使用 redux-thunk。 当我记录 store.getState() - 无论我的组件内部状态如何,它都会记录 0。 任何人都可以解释这是如何工作的吗?
提前致谢!
【问题讨论】:
标签: reactjs redux react-redux