'Webpack: Module build failed: Error: Cannot find module 'postcss'

I am trying to integrate my webpack project with sass-loader, but I am get this error:

 Module build failed: Error: Cannot find module 'postcss'

I already installed postcss and postcss-loader with command:

 npm install postcss postcss-loader --save-dev

After install, I continue to get the same error message. I test integrate my project only with css-loader and the same error occurs. I think postcss is a dependency of the css-loader.

In my webpack.config.js I use this configuration in my module.rules:

 {
    test: /\.scss$/,
    use: [{
          loader: "style-loader" // creates style nodes from JS strings
      }, {
          loader: "css-loader" // translates CSS into CommonJS
      }, {
          loader: "sass-loader" // compiles Sass to CSS
      }
    ]
  }

I installed all this loaders and node-sass, I don't know what I am doing wrong :(



Solution 1:[1]

I had this error when using autoprefixer with postcss through postcss-cli. I solved it by rolling postcss back to version 8.1.0 (current version is 8.1.1 at time of writing). This can be easily done by running the below command in your terminal.

npm i [email protected]

Solution 2:[2]

Upgrading postcss-cli to the new version 9.0.1 fixed it for me.

Solution 3:[3]

In my case problem was solved by delete package.lock.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 Tomer Shetah
Solution 2 kmonsoor
Solution 3 Oleg