Después de actualizar el paquete webpack devServer de mi proyecto de "webpack-dev-server": "3.11.2" a "webpack-dev-server": "4.3.0" este problema cuando comienzo mi proyecto:
>> npm run start > backoffice@1.0.0 start > webpack serve --config webpack.dev.js [webpack-cli] Invalid options object. Dev Server has been initialized using an options object that does not match the API schema. - options has an unknown property 'writeToDisk'. These properties are valid: object { allowedHosts?, bonjour?, client?, compress?, devMiddleware?, headers?, historyApiFallback?, host?, hot?, http2?, https?, ipc?, liveReload?, magicHtml?, onAfterSetupMiddleware?, onBeforeSetupMiddleware?, onListening?, open?, port?, proxy?, setupExitSignals?, static?, watchFiles?, webSocketServer? }El registro de cambios parece no estar actualizado y solo he encontrado un par de opciones nuevas: Más información aquí
¿Cómo puedo convertir este archivo de configuración "antiguo" al nuevo?
Y si es posible, ¿dónde puedo encontrar las nuevas opciones de configuración?
webpack.dev.js:
const {merge} = require('webpack-merge'); const common = require('./webpack.common.js'); const path = require('path'); module.exports = merge(common, { mode: 'development', devtool: 'inline-source-map', devServer: { contentBase: path.join(__dirname, './dist'), compress: true, watchContentBase: true, historyApiFallback: true, https: false, open: 'Firefox Developer Edition', stats: { colors: true, }, port: 9002, proxy: { '/api': 'http://localhost:9000' }, writeToDisk: true, }, });Gracias por tu ayuda
Simplemente usa campos que no están permitidos. Su servidor de desarrollo debe estar escrito como tal:
devServer: { static: { directory: path.join(__dirname, './dist') }, compress: true, historyApiFallback: true, https: false, open: true, hot: true, port: 9002, proxy: { '/api': 'http://localhost:9000' } devMiddleware: { writeToDisk: true, }, }, // ps: you don't need 'static' for ./dist . DevServer is here to compile and hot reload the js code that is attached to the "root" node. The dist folder is supposed to contain your final build. // to use writeToDisk, you'll need to install webpack-dev-middleware // npm install webpack-dev-middleware --save-dev