Estoy tratando de transpilar una aplicación express ES6 usando Parceljs.
Al tratar de ejecutar el servidor de desarrollo de paquetes usando el yarn parcel index.js , se muestra que se está ejecutando en localhost:1234 pero la página está en blanco. También genera el siguiente resultado cuando intenta ejecutar node dist/index.js :
index.js:116 throw error; ^ TypeError: Cannot read properties of undefined (reading 'prototype') Ejecutar el yarn parcel index.js --target node no genera ningún puerto de host local para probar la API. Sin embargo, la API ahora funciona, ya que puedo usar node dist/index.js para ejecutar el script, pero ahora tengo que recurrir a npx nodemon /dist/index.js para ver archivos.
Aquí está el código de ejemplo. índice.js
import express from "express"; const app = express(); const port = 5000; app.get("/", (req, res) => { res.json({ msg: "Hello!" }); }); app.listen(port, () => { console.log(`Example app listening on port ${port}`); });paquete.json
... "dependencies": { "express": "^4.17.3", "parcel": "^2.3.2", "parcel-bundler": "^1.12.5" } ...Apreciaría mucho una solución que me permita usar Parceljs para buscar actualizaciones de archivos directamente, preferiblemente con HMR.
Consulte el problema 355: ¿El paquete está destinado a funcionar con el código del lado del servidor que incluye HMR? : el paquete no admite (todavía) la recarga de módulos activos en nodejs.
El paquete crea un servidor web y sirve su código, pero Express debe ser llamado por sí mismo para poder crear un servidor web y solicitudes de servidor. Será mejor que uses babel & nodemon en lugar de paquete
Yo uso el comando de abajo
nodemon --exec babel-node src/index.js