Tengo una aplicación NodeJS simple (un trabajador de Cloudflare).
En el archivo mecanografiado principal ( index.ts ) importo el módulo controlador que tiene esto como primera línea: const Monitor = import('ping-monitor')
ping-monitor es una dependencia en package.json:
"dependencies": { "ping-monitor": "^0.6.2" } Ahora, cuando ejecuto la parcel build src/index.ts la salida en el dist tiene: var $1ZQrD$pingmonitor = require("ping-monitor");
Por lo tanto, el contenido de ping-monitor no se incluye correctamente. Y cuando trato de ejecutar esto localmente a través de wrangler dev (la salida es dist/worker.js ) se queja: Uncaught ReferenceError: require is not defined added.
¿Cómo puedo decirle a ParcelJS que empaque ping-monitor dentro de la salida?
De forma predeterminada, la parcela no agrupará ninguna dependencia para los objetivos de compilación de nodejs. Si desea agrupar todas las dependencias, puede usar la opción includeNodeModules (consulte los documentos ), así:
{ ... "main": "dist/worker.js", "targets" { "main": { "includeNodeModules": true } } }(También puede especificar "lista blanca" de módulos para incluir).