Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

193
Vistas
I don't want to add duplicate data into my redux store array

I want to add unique data into my store array, but seems to stuck while adding the data and duplicate data is getting pushed into array. I am using typescript.

So my slice function looks like this.

const initialState = {
  dropDownData:{
  programs: [],
  years: []
 }
}
const slice = createSlice({
  name:"filterSlice",
  initialState: initialState,
  reducers:{
     updateProgram:(state, action) => {
 state.dropDownData.programs = [...state.dropDownData.programs, action.payload];
   }
 }
});

I am calling this reducer function in this way: dispatch(updateProgram(program))

So the program i am getting is in the form of array. But I don't need duplicate data from the program array.

So how to update my reducer function.

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Instead of this:

state.dropDownData.programs = [...state.dropDownData.programs, action.payload];

Use this:

state.dropDownData.programs = [...(new Set([...state.dropDownData.programs, action.payload]))];

Approach:

  • The javascript Set allows one to retain only unique elements from the parameter.
  • Thus, when a new Set is created with elements from existing two arrays, the Set will keep only the unique elements.
  • Next, we need to use the ... spread-operator to transform the Set back into an array.
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda