Usando Vue 3, ¿cómo agrego path-browserify a vue.config.js?
module.exports = { chainWebpack: config => {} }Recibo el siguiente error al compilar:
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: { "path": require.resolve("path-browserify") }' - install 'path-browserify' If you don't want to include a polyfill, you can use an empty module like this: resolve.fallback: { "path": false }Webpack 5 eliminó algunas cosas que Webpack 4 incluía en el paquete.
Para recuperarlo todo en una aplicación vue3, puede usar el complemento polyfill. Desde una aplicación vanilla create-vue-con babel:
> npm i node-polyfill-webpack-pluginbabel.config.js
module.exports = { presets: [ '@vue/cli-plugin-babel/preset' ] }vue.config.js
const { defineConfig } = require("@vue/cli-service"); const NodePolyfillPlugin = require("node-polyfill-webpack-plugin"); module.exports = defineConfig({ transpileDependencies: true, configureWebpack: { plugins: [new NodePolyfillPlugin()], optimization: { splitChunks: { chunks: "all", }, }, }, });Con la ayuda de @Zack:
const NodePolyfillPlugin = require('node-polyfill-webpack-plugin') module.exports = { chainWebpack: config => { config.plugin('polyfills').use(NodePolyfillPlugin) }, }