Element won't be duplicated and always at 0 index, return { ...state, data: { ...state.data, list: [].concat(action.payload.list, state.data.list.filter(val=>val.id==action.payload.list.id)) } }