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

205
Visualizações
¿Hay alguna forma de exportar una variable y cambiarla después de importarla?

Estoy usando Webpack y tengo un archivo function.js con este código:

 import { randomNum } from '../index.js'; export function getSlidePrev() { if (randomNum > 1) { randomNum -= 1; setBg(randomNum); } }

Y en mi archivo main.js tengo esto:

 function getRandomNum(min, max) { min = Math.ceil(min); max = Math.floor(max); return Math.floor(Math.random() * (max - min + 1)) + min; } export let randomNum = getRandomNum(firstSlideNumber, lastSlideNumber); const slidePrev = document.querySelector('.slide-prev'); slidePrev.addEventListener('click', getSlidePrev);

Me sale este tipo de error:

 Uncaught TypeError: Cannot set property randomNum of #<Object> which has only a getter at HTMLButtonElement.getSlidePrev

Intenté buscar en Google, pero no pude resolver este problema. Alguien dice que es por usar Babel.

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

0

Una variable importada es de solo lectura, no puede modificarla en el archivo donde se importa. Esto es lo que mdn dice al respecto:

La declaración de import estática se usa para importar enlaces en vivo de solo lectura que son exportados por otro módulo. Los enlaces importados se denominan enlaces activos porque los actualiza el módulo que exportó el enlace, pero el módulo de importación no los puede modificar.

Puede convertir randomNum en un objeto si desea mutarlo en diferentes importaciones. Para eso cámbialo en index.js a:

 export const randomNum = {value : 1000};

Y úsalo de esta manera:

 import { randomNum } from "../index.js"; export function getSlidePrev() { if (randomNum.value > 1) { randomNum.value -= 1; setBg(randomNum.value); } }
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