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

233
Visualizações
¿Por qué la tienda en redux debería ser una variable constante?

He visto muchos ejemplos como const store = createStore(someReducer) ¿de qué sirve convertirlo en una constante cuando queremos que se cambie a través de reductores? ¿Por qué no var?

about 4 years ago · Juan Pablo Isaza
3 Respostas
Responde à pergunta

0

El valor de la store nunca debe cambiar para apuntar a una nueva tienda. El estado de la tienda cambia, pero la store siempre se refiere solo a la tienda que se creó. Puede verlo en el ejemplo de la documentación de createStore :

 import { createStore } from 'redux' function todos(state = [], action) { switch (action.type) { case 'ADD_TODO': return state.concat([action.text]) default: return state } } const store = createStore(todos, ['Use Redux']) store.dispatch({ type: 'ADD_TODO', text: 'Read the docs' }) console.log(store.getState()) // [ 'Use Redux', 'Read the docs' ]

store nunca obtiene un nuevo valor allí, pero el estado de la tienda a la que se refiere cambia. Observe el bit al final que obtiene el estado actual de la tienda.

Aclaremos eso agregando una llamada a getState antes del dispatch :

 // console.log(Object.keys(window).sort()); const { createStore } = RTK; function todos(state = [], action) { switch (action.type) { case 'ADD_TODO': return state.concat([action.text]) default: return state } } const store = createStore(todos, ['Use Redux']) console.log("before dispatch:", JSON.stringify(store.getState())) // before dispatch: ["Use Redux"] store.dispatch({ type: 'ADD_TODO', text: 'Read the docs' }) console.log("after dispatch: ", JSON.stringify(store.getState())) // after dispatch: ["Use Redux", "Read the docs"]
 <script src="https://unpkg.com/@reduxjs/toolkit"></script>

El estado de la tienda cambia, no qué tienda se está utilizando, por lo que store nunca cambia.

about 4 years ago · Juan Pablo Isaza Relatório

0

El contenido de la tienda cambiará, pero nunca lo reasignará con otra tienda, por lo tanto, const .

En general, hoy en día es mejor usar let y const , ya que tienen un alcance diferente al de var . var no se limita al alcance del bloque, por lo que las variables se sobrescriben entre sí de formas inesperadas. Considere estos dos fragmentos de código: (ejemplo de MDN )

 var x = 1; if (x === 1) { var x = 2; // just changes the value of the outer variable console.log(x); // expected output: 2 } console.log(x); // expected output: 2

si usa let (o const ) en su lugar, las variables existen solo en el ámbito en el que se crean: se ocultan entre sí, pero no anulan los valores de las demás:

 let x = 1; if (x === 1) { let x = 2; // new variable with the same name for the inner block, shadows the outer variable console.log(x); // expected output: 2 } console.log(x); // expected output: 1
about 4 years ago · Juan Pablo Isaza Relatório

0

const no crea una estructura de datos inmutable, solo evita que esa variable sea reasignada .

 const numbers = [1,2,3]; // mutating the object assigned to `numbers` is fine numbers.push(4); // reassigning the variable is not numbers = [1,2,3,4];

Por lo general, const se usa cuando una variable no se reasignará y cuando se desea un alcance de bloque. El objeto de la tienda redux es un gran ejemplo de eso.

about 4 years ago · Juan Pablo Isaza Relatório
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