[英]How to get the latest value to a state from a redux store?
好的開始。 我認為您在狀態部分有些復雜。 我為您修改了它,還刪除了bind
關鍵字,如果您使用最新的JS lang規范,我覺得不需要。
我使用Object.assign
只是為了防止狀態對象發生突變。 通常可以通過使用ImmutableJS來避免這種情況(請閱讀文檔)
// Reducer.
const updateReducer = (state = {text:''}, action) => {
switch (action.type) {
case UPDATE_TEXT:
return Object.assign({}, state, { text: action.text });
default:
return state;
}
};
const mapStateToProps = state => {
return {
text: state.text
};
};
和渲染方法:
render() {
return (
<div>
<input type="text" onChange={(...arg) => this.changeText(...arg)} />
<p>{this.props.text}</p>
</div>
);
}
您的初始代碼有什么問題?
您將每個按鍵的所有文本以及更新和增長的文本存儲在數組中。 在渲染時,僅顯示最后一個(在數組中創建了不需要的副本,這些副本從未使用過),並省略了其他數組值。 相反,只需將舊值替換為當前輸入值即可。
您的分叉代碼在這里
編碼愉快!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.