Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

257
Visualizações
Why route parameters mutating in react navigation?

In react native application i am using react navigation. I am send a object from one screen to other. After one section i am running a function which makes copy of my route parameter and modifying the copy. But my original parameter is also modifying. I do not want to modify the original object. How to avoid mutating parameters ?

Here is my parameter structure

{
  id: 1
  name: 'some name',
  productOptions: [
    {
      productOptionId: 1
      productOptionName: 'Option name'
      options: [
        {
          name: 'some option name',
          value: 12
        },
        {
          name: 'some option name',
          value: 12
        },
        {
          name: 'some option name',
          value: 12
        }
      ]
    },
    {
      productOptionId: 1
      productOptionName: 'Option name'
      options: [
        {
          name: 'some option name',
          value: 12
        },
        {
          name: 'some option name',
          value: 12
        },
        {
          name: 'some option name',
          value: 12
        }
      ]
    }
  ]
}

Here is my screen code

const MyScreen({navigation, route}){
   const product = route.params.product
    const productOptions =  route.params.productOptions
  const [newOptionState, setNewOptionState] = useState([])
  useEffect(() => {
      setTimeout(()=>setPreSelected(), 1000)
   }, [])
   
     const setPreSelected = ()=>{
         let tempProductOptions = [...productOptions]
      tempProductOptions.map((item)=>{
         if(item.options.length && item.options.length>1){
             item.options.splice(1)
         }
     })
       setNewOptionState(tempProductOptions)
  }
}

about 4 years ago · Juan Pablo Isaza
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda