Estoy ejecutando un sitio de Gatsby3 y, como muchos, cuando trato de usar ciertos complementos de web3, encuentro errores de Webpack 5 sobre la falta de Polyfills. Entiendo que ya no los hacen automáticamente y debo manejarlos yo mismo.
Después de probar todas las soluciones que pude encontrar, parece que esta debería funcionar, pero no es para mí. Supongo que estoy haciendo algo mal/faltando algo.
Esto es lo que agregué a la configuración de Gatsby, para manejar los polyfills faltantes para "crypto" y "stream":
exports.onCreateWebpackConfig = ({ actions }) => { actions.setWebpackConfig({ resolve: { fallback: { crypto: require.resolve('crypto-browserify'), stream: require.resolve('stream-browserify'), }, }, }) }Tengo crypto-browserify y stream-browserify instalado.
Sin embargo, los mismos errores persisten:
BREAKING CHANGE: webpack < 5 used to include polyfills for node.js core modules by default. This is no longer the case. Verify if you need this module and configure a polyfill for it. If you want to include a polyfill, you need to: - add a fallback 'resolve.fallback: { "stream": require.resolve("stream-browserify") }' - install 'stream-browserify' If you don't want to include a polyfill, you can use an empty module like this: resolve.fallback: { "stream": false }Agradezco cualquier ayuda!! Gracias de antemano.
Tuve exactamente el mismo problema.
Su código de configuración es correcto y es lo que usé para resolver mi problema, al agregarlo dentro gatsby-node.js en la carpeta raíz, luego instalé ambos paquetes npm.
Asegúrese de poner el código de configuración dentro gatsby-node.js y no gatsby-config.js como hice cuando vi su pregunta.