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

210
Vistas
Hacer una carpeta con html y node.js

Quería hacer un sitio web que tome una entrada y, usando node.js para el backend, cree una carpeta usando mkdirSync(input.value) . Tengo el módulo fs instalado localmente y lo hice funcionar cuando solo uso javascript, pero cuando intento hacerlo desde un botón en una página web, no funciona. Esta es mi estructura de carpetas y archivos:

  • Carpeta de proyecto
    • node_modules
    • origen
      • índice.html
      • guión.js
    • paquete-bloqueo.json
    • paquete.json

Este es el código en los archivos index.html y script.js :

 const fs = require("fs") const btn = document.querySelector("#btn") const input = document.querySelector("#in") btn.addEventListener("click", () => { fs.mkdirSync(`./src/${input.value}`) })
 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title> Document </title> </head> <body> <input type="text" id="in"> <input type="submit" id="btn"> <script src="script.js"></script> </body> </html>

¿Es posible hacer esto en primer lugar? No puedo usar PHP ya que no podré usar un servidor para este proyecto. Si tienes CUALQUIER otra idea, por favor dímelo, podría ser de ayuda.

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

0

Estás malinterpretando cómo funciona un backend:

El backend NO es un script adjunto al documento HTML. Por lo tanto, su script.js no funcionará porque no es un código de backend, es un código de frontend.

Puede usar Express.js para hacer su backend.

about 4 years ago · Juan Pablo Isaza Denunciar

0

Estás mezclando dos conceptos aquí que no van juntos. Intentaré explicar esto usando tu primer script:

 const fs = require("fs");

Esta línea pertenece a un contexto de nodeJS y no tiene idea de qué navegadores, ventanas o documentos son. Incluso si supiera que aún no funcionaría porque los navegadores admiten la sintaxis de ESM, es decir, import pero no el requisito de require .

 const btn = document.querySelector("#btn") const input = document.querySelector("#in") btn.addEventListener("click", () => { fs.mkdirSync(`./src/${input.value}`) })

Aquí estamos en un contexto de navegador. Los navegadores no saben nada sobre los sistemas de archivos, por lo que todo lo que pueden hacer es generar un error cuando se encuentran con algo como fs .

Necesitará algún tipo de arquitectura de servidor/cliente, me temo, incluso cuando es solo un pequeño servidor local.

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