0
私はチェックボックスを備えたテーブルを持っています。ユーザーがチェックボックスを選択すると、IDがアクション作成者に送信されます。Lodashを使用してRedux/Reactでデータを追加/削除する
Component.js
handlePersonSelect({ id }, event) {
const { selectPerson, deselectPerson } = this.props;
event.target.checked ? selectPerson(id) : deselectPerson(id);
}
は私が失われていた時に、この段階までにすべての道を行くことができるよ
export function selectPerson(id) {
console.log("selected")
return {
type: SELECT_PERSON,
payload: id
};
}
export function deselectPerson(id) {
return {
type: DESELECT_PERSON,
payload: id
};
}
action.js: これは問題ですコード:
selectedPeopleステートは、それぞれのケースに基づいてIDを加算または減算する必要があります。現時点では、私はIDを選択解除するたびに、私の全体の "人"テーブルが消えます。
export default function(state = INITIAL_STATE, action) {
switch (action.type) {
case FETCH_PEOPLE:
return {...state, people: action.payload.data};
case SELECT_PERSON:
return {...state, selectedPeople: [ ...state.selectedPeople, action.payload]};
case DESELECT_PERSON:
return {...state, selectedPeople: _.without(state.selectedPeople, action.payload)};
default
return state;
}
}
はまた、あなたがDESELECT_PERSON
アクションを持っていなかった注意し、代わりに2 SELECT_PERSON
アクション:
ありがとうございます!それは私がこれを試してみるタイプミスでした – lost9123193
_withoutの代わりに_.outoutを使用しました。 – lost9123193
申し訳ありませんが、それはタイプミスでした... – DDS