0
redux 상태에서 요소를 제거 할 때 구성 요소를 업데이트하는 데 문제가 있습니다.redux 상태를 변경할 때 요소 제거
내 구성 요소 :
const mapStateToProps = state => ({
products: state.shoppingBasket.list,
});
const ShoppingBasket = React.createClass({
propTypes: {
removeProduct: React.PropTypes.func.isRequired,
products: React.PropTypes.array,
open: React.PropTypes.func.isRequired,
},
removeFromBasket(index, name) {
this.props.removeProduct(index);
},
render() {
return (
<div>
{this.props.products.map((product, index) => (
<div key={index}>
product.name
<button onClick={() => this.RemoveFromBasket(index)}
</div>
);
)}
</div>
);
},
});
export default connect(mapStateToProps, actions)(ShoppingBasket);
내 감속기 :
export default function shoppingBasket(
state = {
list: [],
},
action
) {
let tmp = [];
switch (action.type) {
case SHOPPING_BASKET_ADD:
return { list: [...state.list, action.payload.product] };
case SHOPPING_BASKET_REMOVE:
tmp = state.list;
tmp.splice(action.payload.index, 1);
return { list: tmp };
default:
return state;
}
}
REDUX 상태에서 삽입 요소 내 구성 요소 successfuly 업데이트,하지만 난 버튼을 클릭 removeFromBasket
요소를 호출 할 때 REDUX 상태에서 제거되었다 하지만위원회는 업데이트하지 말아야한다.
감사합니다, 또한 작업과'반환 {목록 : _ ((I를 state.list.filter) => 내가 == action.payload!. 색인)};' –