最大の配列数を10にしたい。レデューサー状態に新しいオブジェクトを追加すると、配列数が10を超えると、最初のオブジェクトを削除したい。これどうやってするの ?レデューサー状態の配列から最後の要素を削除する
これは私のコードです:
switch(action.type) {
case types.RECENTLY_VIEWED_ITEM:
return Object.assign({}, state, {
data: [
...(state.data.filter(item => (item.id !== action.payload.id))),
action.payload
]
});
case types.REMOVE_RECENTLY_VIEWED_ITEM:
return Object.assign({}, state, {
data: [
...(state.data.splice(0, 1))
]});
default:
return state;
}
はあなたのスライスと
state.data.sliceこの回答を参照してください。したがって、配列の長さが15の場合、配列は最後の14個のデータで返されます。 – Ved
@Ved OPはどこでもカウントをチェックしていないので、長さが10以上のときにアクションを呼び出すと思います。それは私が推測できるものです。 –
質問:「最大配列数を10にしたい配列数が10を超えています。最初のオブジェクトを削除します。 " – Ved