web-dev-qa-db-fra.com

TypeError: Impossible de lire la propriété 'presetToOptions' de non définie dans webpack-cli avec ReactJs

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?

8
aman jain

webpack-cli a besoin de au moinswebpackversion 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 } _

3
Dhruvdutt Jadhav

Je faisais également face au problème et résolus en utilisant les étapes ci-dessous:

  1. Désinstaller webpack-cli npm uninstall webpack-cli
  2. Utilisez "build": "webpack --config build/webpack.conf.js --color" Pour la construction de package.json au lieu de webpack-cli

j'espère que ça va aider.

2
Sai prateek

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;

1
Vitaly Ridiman

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.

0
Ramya Ashok-Rao