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

841
Vistas
Error de paquete web: configuration.node tiene una propiedad desconocida 'fs'

He encontrado un error al usar la última versión de Webpack (5.1.0). Parece que la configuración arroja un error porque el esquema de validación es demasiado restrictivo. Aquí está mi archivo de configuración de paquete web en esencia, y el mensaje de error que estoy viendo.

Webpack.config.js

https://gist.github.com/adarshbhat/3ec5950b66b78102da0cf46e51a3d633

Error

 [webpack-cli] Invalid configuration object. Webpack has been initialized using a configuration object that does not match the API schema. - configuration.node should be one of these: false | object { __dirname?, __filename?, global? } -> Include polyfills or mocks for various node stuff. Details: * configuration.node has an unknown property 'module'. These properties are valid: object { __dirname?, __filename?, global? } -> Options object for node compatibility features. * configuration.node has an unknown property 'net'. These properties are valid: object { __dirname?, __filename?, global? } -> Options object for node compatibility features. * configuration.node has an unknown property 'fs'. These properties are valid: object { __dirname?, __filename?, global? } -> Options object for node compatibility features. npm ERR! code ELIFECYCLE npm ERR! errno 2 npm ERR! jstest@1.0.0 start: `webpack serve` npm ERR! Exit status 2

Estoy intentando usar una biblioteca generadora de analizadores (antlr4) que funciona tanto en un entorno Node.js como en navegadores. Parece que el código de la biblioteca requiere objetos globales como fs, y si está vacío, asume que está en un entorno de navegador. Según la documentación de Antlr4 y la de Webpack , este es un archivo de configuración compatible. Pero no está funcionando. Por favor ayuda.

Versiones

  • paquete web: 5.1.0
  • webpack-cli: 4.0.0
  • paquete web-dev-middleware: 3.7.2
  • webpack-dev-servidor: 3.11.0

Actualización (29 de octubre de 2020)

La documentación de Antlr JavaScript ahora se ha actualizado con la nueva configuración para Webpack 5

over 4 years ago · Santiago Trujillo
3 Respuestas
Responde la pregunta

0

Logré hacer que esto funcionara con la ayuda del equipo de Webpack. Ya no se admite el uso de la siguiente configuración de paquete web recomendada por la documentación de antlr4.

No funciona

 { node: { fs: 'empty', module: 'empty', net: 'empty' } }

Configuración de trabajo

 { resolve: { fallback: { fs: false } } }

Con esto, pude hacer funcionar mi analizador de JavaScript.

Tenga en cuenta que hay un esfuerzo continuo para actualizar antlr4 para generar código basado en ES6. Esta configuración puede no ser necesaria en el futuro.

over 4 years ago · Santiago Trujillo Denunciar

0

Usuarios de Next.js :

 module.exports = { webpack: (config, { isServer }) => { if (!isServer) { config.resolve.fallback.fs = false; } return config; }, }

Fuente

over 4 years ago · Santiago Trujillo Denunciar

0

Exactamente para Rails webpacker, si lo está utilizando, la solución debería ser:

Dentro de cualquiera de config/webpack/*.js que usa la configuración personalizada simple (consulte https://github.com/rails/webpacker#webpack-configuration para obtener más información), simplemente agregue el código que resuelve y elimina la propiedad del nodo.

 const { environment } = require('@rails/webpacker') const customConfig = { resolve: { fallback: { dgram: false, fs: false, net: false, tls: false, child_process: false } } }; environment.config.delete('node.dgram') environment.config.delete('node.fs') environment.config.delete('node.net') environment.config.delete('node.tls') environment.config.delete('node.child_process') environment.config.merge(customConfig); module.exports = environment
over 4 years ago · Santiago Trujillo 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