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

129
Visualizações
Cómo importar funciones desde mi proyecto a script.JS

Las cosas funcionan bien cuando hago un proyecto independiente con dos archivos, uno llamado helperFuncs.js y el otro llamado index.js, donde helperfuncs.js tiene

 function stringOfZeros(numZeros) { //takes in a number and outputs a string with that many zeros; ... } module.exports = { stringOfZeros: stringOfZeros, }

e index.js tiene

 const helperFuncs = require("./helperFuncs.js"); const stringOfZeros=helperFuncs.stringOfZeros; let myZeroString = stringOfZeros(17); console.log(myZeroString);

Esto funciona incluso sin un archivo package.json en el proyecto.

Sin embargo, si hago lo mismo donde creo un archivo helperFuncs.js idéntico en un pequeño proyecto HTML que tiene una página index.html y un archivo script.js en el mismo nivel en el directorio, y configuro las líneas anteriores de código del archivo index.js en el archivo script.js donde las líneas se ejecutan dentro de un detector de carga de eventos de ventana que de otra manera funciona, aparece este error:

TypeError: stringOfZeros no es una función

¿Qué estoy haciendo mal? ¿El hecho de que esté dentro de un archivo de secuencia de comandos de alguna manera requiere que use "importar" en lugar de requerir, o hace que sea obligatorio crear un archivo package.json donde, de lo contrario, sería opcional?

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

0

Parece que está intentando ejecutar un código compatible con Node JS en un navegador.

Actualmente, los navegadores no admiten este tipo de sintaxis de importación/exportación. Para usar el código anterior para aplicaciones web, necesita herramientas especiales adicionales que reconstruirán su código de manera que el navegador lo entienda.

Te recomiendo que pruebes estas herramientas:

  • paquete web
  • Babel (requiere configuración de complementos adicionales)
  • Vite.js (gracias a Invizi por la sugerencia)
about 4 years ago · Juan Pablo Isaza Relatório

0

Los navegadores web no admiten módulos CommonJS ni cjs. En cambio, lo que está buscando son módulos ES o esm.

Es común que los módulos en los sitios web de producción se empaqueten en un solo archivo javascript con un paquete. Esto le permite usar cualquier tipo de módulo que desee y puede aplicar transformaciones a su código, como minimizarlo o agregar soporte para navegadores más antiguos.

Si desea escribir su código y ejecutarlo directamente sin un paquete. Debe utilizar módulos ES. Puedes encontrar mucha información en esta página . Pero en tu caso sería algo como esto:

helperfuncs.js

 export function stringOfZeros(numZeros) { }

índice.js

 import {stringOfZeros} from "./helperFuncs.js"; let myZeroString = stringOfZeros(17); console.log(myZeroString);

Luego puede cargar su index.js en su html con la etiqueta de type configurada en module de esta manera:

 <script src="index.js" type="module"></script>
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