Je travaille sur l'application ReactJS et le "webpack": "^2.7.0"
, .__ configuré. "webpack-cli": "^2.0.9
", mais lors de l’exécution du pack Web à partir de cmd, l’erreur suivante apparaît.
const statsPresetToOptions = require("webpack").Stats.presetToOptions;
^
TypeError: Cannot read property 'presetToOptions' of undefined
at processOptions (F:\reactJs_weather\React-Weather-App\node_modules\webpack-cli\bin\webpack.js:284:57)
Avez-vous une idée?
webpack-cli
a besoin de au moinswebpack
version 4 pour fonctionner.
Si vous utilisez une version plus ancienne telle que webpack 2 ou 3, vous n'avez pas besoin d'ajouter le package webpack-cli
séparément. Il est déjà intégré aux anciennes versions de webpack
lui-même.
Depuis la version 4, l’ensemble de la CLI a été porté dans un package séparé, webpack-cli
.
Le correctif devrait consister à supprimer le package webpack-cli
ou à utiliser la dernière version de webpack>=4
.
Il y a un PR en cours à propos de l'ajout de WebPack 4 en tant que dépendance entre pairs, de sorte qu'un avertissement s'affichera bientôt de la même manière.
Discussions associées: le Webpack n'est pas répertorié en tant qu'homologue _, ajoutez le Webpack 4 en tant que dépendance entre homologues } _
Je faisais également face au problème et résolus en utilisant les étapes ci-dessous:
npm uninstall webpack-cli
"build": "webpack --config build/webpack.conf.js --color"
Pour la construction de package.json au lieu de webpack-clij'espère que ça va aider.
Dans node_modules\webpack-cli\bin, changez le chemin d'accès à votre vrai fichier Stats.js.
Pour moi, le chemin suivant est correct:
statsPresetToOptions = require ("../../ webpack/lib/Stats.js"). presetToOptions;
changer réellement le chemin dans node_modules/webpack-cli/bin/cli.js en tant que statsPresetToOptions = require ("../../ webpack/lib/Stats.js"). presetToOptions; a travaillé pour moi.