在Redux中更新数组的状态可以通过以下步骤实现:
updateArray
的action。const updateArray = (newArray) => {
return {
type: 'UPDATE_ARRAY',
payload: newArray
};
};
UPDATE_ARRAY
action,并更新数组的状态。在reducer中,可以使用Array
的方法(如concat
、slice
、map
等)来更新数组。const initialState = {
array: []
};
const reducer = (state = initialState, action) => {
switch (action.type) {
case 'UPDATE_ARRAY':
return {
...state,
array: action.payload
};
default:
return state;
}
};
connect
函数连接Redux的状态和操作到组件,并在组件中调用updateArray
action来更新数组的状态。import { connect } from 'react-redux';
import { updateArray } from './actions';
class MyComponent extends React.Component {
// ...
updateArrayState = (newArray) => {
this.props.updateArray(newArray);
}
// ...
}
const mapStateToProps = (state) => {
return {
array: state.array
};
};
const mapDispatchToProps = {
updateArray
};
export default connect(mapStateToProps, mapDispatchToProps)(MyComponent);
通过以上步骤,就可以在Redux中更新数组的状态。当调用updateArrayState
方法时,Redux会自动触发UPDATE_ARRAY
action,并在reducer中更新数组的状态。组件会接收到更新后的数组状态,并重新渲染。
领取专属 10元无门槛券
手把手带您无忧上云